diff --git a/.gitignore b/.gitignore index aa848ec71d..9f5e35a36c 100644 --- a/.gitignore +++ b/.gitignore @@ -15,44 +15,56 @@ *.manifest.res *.o *.d +xcuserdata +contents.xcworkspacedata .DS_Store .svn profile -extras/juce demo/Builds/MacOSX/build -extras/juce demo/Builds/Linux/build -extras/juce demo/Builds/VisualStudio2005/Debug -extras/juce demo/Builds/VisualStudio2005/Release -extras/juce demo/Builds/VisualStudio2008/Debug -extras/juce demo/Builds/VisualStudio2008/Release -extras/juce demo/Builds/iPhone/build -extras/audio plugins/demo/Builds/MacOSX/build -extras/audio plugins/demo/Builds/Linux/build -extras/audio plugins/demo/Builds/VisualStudio2005/Debug -extras/audio plugins/demo/Builds/VisualStudio2005/Release -extras/audio plugins/demo/Builds/VisualStudio2008/Debug -extras/audio plugins/demo/Builds/VisualStudio2008/Release +extras/JuceDemo/Builds/MacOSX/build +extras/JuceDemo/Builds/Linux/build +extras/JuceDemo/Builds/VisualStudio2005/Debug +extras/JuceDemo/Builds/VisualStudio2005/Release +extras/JuceDemo/Builds/VisualStudio2008/Debug +extras/JuceDemo/Builds/VisualStudio2008/Release +extras/JuceDemo/Builds/VisualStudio2010/Debug +extras/JuceDemo/Builds/VisualStudio2010/Release +extras/JuceDemo/Builds/Android/bin +extras/JuceDemo/Builds/Android/src/com +extras/JuceDemo/Builds/iPhone/build +extras/audio plugin demo/Builds/MacOSX/build +extras/audio plugin demo/Builds/Linux/build +extras/audio plugin demo/Builds/VisualStudio2005/Debug +extras/audio plugin demo/Builds/VisualStudio2005/Release +extras/audio plugin demo/Builds/VisualStudio2008/Debug +extras/audio plugin demo/Builds/VisualStudio2008/Release extras/audio plugin host/Builds/MacOSX/build extras/audio plugin host/Builds/Linux/build extras/audio plugin host/Builds/VisualStudio2005/Debug extras/audio plugin host/Builds/VisualStudio2005/Release extras/audio plugin host/Builds/VisualStudio2008/Debug extras/audio plugin host/Builds/VisualStudio2008/Release -extras/Jucer (experimental)/Builds/MacOSX/build -extras/Jucer (experimental)/Builds/Linux/build -extras/Jucer (experimental)/Builds/VisualStudio2005/Debug -extras/Jucer (experimental)/Builds/VisualStudio2005/Release -extras/Jucer (experimental)/Builds/VisualStudio2008/Debug -extras/Jucer (experimental)/Builds/VisualStudio2008/Release -extras/Jucer (experimental)/Builds/iPhone/build +extras/Introjucer/Builds/MacOSX/build +extras/Introjucer/Builds/Linux/build +extras/Introjucer/Builds/VisualStudio2005/Debug +extras/Introjucer/Builds/VisualStudio2005/Release +extras/Introjucer/Builds/VisualStudio2008/Debug +extras/Introjucer/Builds/VisualStudio2008/Release +extras/Introjucer/Builds/VisualStudio2010/Debug +extras/Introjucer/Builds/VisualStudio2010/Release extras/the jucer/build/mac/build extras/audio plugin host/build/mac/build -extras/binarybuilder/mac/build -extras/prebuilt/Jucer.app -extras/prebuilt/jucedemo.app -extras/prebuilt/PluginHost.app -bin/intermediate* -bin/lib* -bin/jucelib* -bin/JUCE* -Builds/VisualStudio2008_DLL/Debug -Builds/VisualStudio2008_DLL/Release +extras/binarybuilder/Builds/MacOSX/build +extras/binarybuilder/Builds/Linux/build +extras/binarybuilder/Builds/VisualStudio2005/Debug +extras/binarybuilder/Builds/VisualStudio2005/Release +extras/binarybuilder/Builds/VisualStudio2008/Debug +extras/binarybuilder/Builds/VisualStudio2008/Release +extras/binarybuilder/Builds/VisualStudio2010/Debug +extras/binarybuilder/Builds/VisualStudio2010/Release +extras/static library/Builds/MacOSX/build +extras/static library/Builds/VisualStudio2008/Debug +extras/static library/Builds/VisualStudio2008/Release +extras/static library/Builds/VisualStudio2010/Debug +extras/static library/Builds/VisualStudio2010/Release +extras/windows dll/Builds/VisualStudio2008/Debug +extras/windows dll/Builds/VisualStudio2008/Release diff --git a/Builds/Linux/Makefile b/Builds/Linux/Makefile deleted file mode 100644 index 44d6a96386..0000000000 --- a/Builds/Linux/Makefile +++ /dev/null @@ -1,2056 +0,0 @@ -# Automatically generated makefile, created by the Jucer -# Don't edit this file! Your changes will be overwritten when you re-save the Jucer project! - -ifndef CONFIG - CONFIG=Debug -endif - -# (this disables dependency generation if multiple architectures are set) -DEPFLAGS := $(if $(word 2, $(TARGET_ARCH)), , -MMD) - -ifeq ($(CONFIG),Debug) - BINDIR := build - LIBDIR := build - OBJDIR := build/intermediate/Debug - OUTDIR := ../../bin - CPPFLAGS := $(DEPFLAGS) -D "LINUX=1" -D "DEBUG=1" -D "_DEBUG=1" -D "JUCER_LINUX_MAKE_7346DA2A=1" -I "/usr/include" -I "/usr/include/freetype2" - CFLAGS += $(CPPFLAGS) $(TARGET_ARCH) -g -ggdb -O0 - CXXFLAGS += $(CFLAGS) - LDFLAGS += -L$(BINDIR) -L$(LIBDIR) -L"/usr/X11R6/lib/" -L"../.././bin" -lfreetype -lpthread -lrt -lX11 -lGL -lGLU -lXinerama -lasound - LDDEPS := - RESFLAGS := -D "LINUX=1" -D "DEBUG=1" -D "_DEBUG=1" -D "JUCER_LINUX_MAKE_7346DA2A=1" -I "/usr/include" -I "/usr/include/freetype2" - TARGET := libjucedebug.a - BLDCMD = ar -rcs $(OUTDIR)/$(TARGET) $(OBJECTS) $(TARGET_ARCH) -endif - -ifeq ($(CONFIG),Release) - BINDIR := build - LIBDIR := build - OBJDIR := build/intermediate/Release - OUTDIR := ../../bin - CPPFLAGS := $(DEPFLAGS) -D "LINUX=1" -D "NDEBUG=1" -D "JUCER_LINUX_MAKE_7346DA2A=1" -I "/usr/include" -I "/usr/include/freetype2" - CFLAGS += $(CPPFLAGS) $(TARGET_ARCH) -Os - CXXFLAGS += $(CFLAGS) - LDFLAGS += -L$(BINDIR) -L$(LIBDIR) -L"/usr/X11R6/lib/" -L"../.././bin" -lfreetype -lpthread -lrt -lX11 -lGL -lGLU -lXinerama -lasound - LDDEPS := - RESFLAGS := -D "LINUX=1" -D "NDEBUG=1" -D "JUCER_LINUX_MAKE_7346DA2A=1" -I "/usr/include" -I "/usr/include/freetype2" - TARGET := libjuce.a - BLDCMD = ar -rcs $(OUTDIR)/$(TARGET) $(OBJECTS) $(TARGET_ARCH) -endif - -OBJECTS := \ - $(OBJDIR)/juce_Application_2817465d.o \ - $(OBJDIR)/juce_ApplicationCommandInfo_80671406.o \ - $(OBJDIR)/juce_ApplicationCommandManager_5aac95f.o \ - $(OBJDIR)/juce_ApplicationCommandTarget_90a89aa9.o \ - $(OBJDIR)/juce_ApplicationProperties_a76b5c30.o \ - $(OBJDIR)/juce_AiffAudioFormat_ffbda971.o \ - $(OBJDIR)/juce_AudioCDReader_c730f7a6.o \ - $(OBJDIR)/juce_AudioFormat_6605d0f9.o \ - $(OBJDIR)/juce_AudioFormatManager_949148fe.o \ - $(OBJDIR)/juce_AudioFormatReader_36f0295c.o \ - $(OBJDIR)/juce_AudioFormatWriter_11461d0c.o \ - $(OBJDIR)/juce_AudioSubsectionReader_65f61a0a.o \ - $(OBJDIR)/juce_AudioThumbnail_cb99b4b4.o \ - $(OBJDIR)/juce_AudioThumbnailCache_89a7c678.o \ - $(OBJDIR)/juce_CoreAudioFormat_1ce243da.o \ - $(OBJDIR)/juce_FlacAudioFormat_19c048f1.o \ - $(OBJDIR)/juce_OggVorbisAudioFormat_3f214fc9.o \ - $(OBJDIR)/juce_QuickTimeAudioFormat_8ad67271.o \ - $(OBJDIR)/juce_WavAudioFormat_4ff23a5f.o \ - $(OBJDIR)/juce_AudioFormatReaderSource_13d4af92.o \ - $(OBJDIR)/juce_AudioSourcePlayer_42464899.o \ - $(OBJDIR)/juce_AudioTransportSource_f3e60751.o \ - $(OBJDIR)/juce_BufferingAudioSource_58721b72.o \ - $(OBJDIR)/juce_ChannelRemappingAudioSource_e17f93c0.o \ - $(OBJDIR)/juce_IIRFilterAudioSource_807ee8aa.o \ - $(OBJDIR)/juce_MixerAudioSource_bc6f772b.o \ - $(OBJDIR)/juce_ResamplingAudioSource_8511875e.o \ - $(OBJDIR)/juce_ReverbAudioSource_3ae42aa6.o \ - $(OBJDIR)/juce_ToneGeneratorAudioSource_77f504b3.o \ - $(OBJDIR)/juce_AudioDeviceManager_c24db832.o \ - $(OBJDIR)/juce_AudioIODevice_f7da876b.o \ - $(OBJDIR)/juce_AudioIODeviceType_e5d402c5.o \ - $(OBJDIR)/juce_AudioDataConverters_dc0ece28.o \ - $(OBJDIR)/juce_AudioSampleBuffer_af6ff195.o \ - $(OBJDIR)/juce_IIRFilter_9a31e47f.o \ - $(OBJDIR)/juce_MidiBuffer_fa4db7fe.o \ - $(OBJDIR)/juce_MidiFile_3bdbc97a.o \ - $(OBJDIR)/juce_MidiKeyboardState_28313976.o \ - $(OBJDIR)/juce_MidiMessage_5b1f5753.o \ - $(OBJDIR)/juce_MidiMessageCollector_108abdc4.o \ - $(OBJDIR)/juce_MidiMessageSequence_a577dcb4.o \ - $(OBJDIR)/juce_MidiOutput_3cc0f43f.o \ - $(OBJDIR)/juce_VSTPluginFormat_af341d6.o \ - $(OBJDIR)/juce_AudioPluginFormat_5dc1eec2.o \ - $(OBJDIR)/juce_AudioPluginFormatManager_c336c715.o \ - $(OBJDIR)/juce_KnownPluginList_cadece16.o \ - $(OBJDIR)/juce_PluginDescription_d9c0f10b.o \ - $(OBJDIR)/juce_PluginDirectoryScanner_c7652cec.o \ - $(OBJDIR)/juce_PluginListComponent_f08a630e.o \ - $(OBJDIR)/juce_AudioProcessor_babd0919.o \ - $(OBJDIR)/juce_AudioProcessorEditor_82a32d26.o \ - $(OBJDIR)/juce_AudioProcessorGraph_76dcb4ff.o \ - $(OBJDIR)/juce_AudioProcessorPlayer_5c53cc9a.o \ - $(OBJDIR)/juce_GenericAudioProcessorEditor_2e8ec30d.o \ - $(OBJDIR)/juce_Sampler_98f716a4.o \ - $(OBJDIR)/juce_Synthesiser_2bffa1dd.o \ - $(OBJDIR)/juce_AbstractFifo_dfc0bd23.o \ - $(OBJDIR)/juce_DynamicObject_69d02ab3.o \ - $(OBJDIR)/juce_NamedValueSet_6b0793df.o \ - $(OBJDIR)/juce_PropertySet_914b5922.o \ - $(OBJDIR)/juce_Value_16231646.o \ - $(OBJDIR)/juce_ValueTree_f822be84.o \ - $(OBJDIR)/juce_Variant_4f31c35a.o \ - $(OBJDIR)/juce_FileLogger_7858478e.o \ - $(OBJDIR)/juce_Logger_4f4f7f72.o \ - $(OBJDIR)/juce_PerformanceCounter_6422080e.o \ - $(OBJDIR)/juce_RelativeTime_bc5ef35b.o \ - $(OBJDIR)/juce_Result_d8f437f.o \ - $(OBJDIR)/juce_SystemStats_c00d8758.o \ - $(OBJDIR)/juce_Time_16acdd6f.o \ - $(OBJDIR)/juce_Uuid_f277575d.o \ - $(OBJDIR)/juce_BlowFish_5d22a7d9.o \ - $(OBJDIR)/juce_MD5_56896819.o \ - $(OBJDIR)/juce_Primes_32e6603.o \ - $(OBJDIR)/juce_RSAKey_b60982ae.o \ - $(OBJDIR)/juce_SHA256_cb4da0d6.o \ - $(OBJDIR)/juce_ActionBroadcaster_7f997786.o \ - $(OBJDIR)/juce_AsyncUpdater_a7e1cb89.o \ - $(OBJDIR)/juce_ChangeBroadcaster_3eb8fecc.o \ - $(OBJDIR)/juce_InterprocessConnection_13086b6d.o \ - $(OBJDIR)/juce_InterprocessConnectionServer_a4d7b350.o \ - $(OBJDIR)/juce_Message_ac79f635.o \ - $(OBJDIR)/juce_MessageListener_93e51509.o \ - $(OBJDIR)/juce_MessageManager_c7e00842.o \ - $(OBJDIR)/juce_MultiTimer_d4d9eca8.o \ - $(OBJDIR)/juce_Timer_77c098b3.o \ - $(OBJDIR)/juce_Component_49f01dfa.o \ - $(OBJDIR)/juce_ComponentListener_e0eda7ce.o \ - $(OBJDIR)/juce_Desktop_e3b47b99.o \ - $(OBJDIR)/juce_ModalComponentManager_b87bddba.o \ - $(OBJDIR)/juce_ArrowButton_ebac7066.o \ - $(OBJDIR)/juce_Button_886d3491.o \ - $(OBJDIR)/juce_DrawableButton_e03899cf.o \ - $(OBJDIR)/juce_HyperlinkButton_af0a8983.o \ - $(OBJDIR)/juce_ImageButton_c4dda738.o \ - $(OBJDIR)/juce_ShapeButton_2359adfe.o \ - $(OBJDIR)/juce_TextButton_8cf49c9e.o \ - $(OBJDIR)/juce_ToggleButton_f69cb85.o \ - $(OBJDIR)/juce_ToolbarButton_884113d8.o \ - $(OBJDIR)/juce_CodeDocument_fdd87805.o \ - $(OBJDIR)/juce_CodeEditorComponent_6fe4a170.o \ - $(OBJDIR)/juce_CPlusPlusCodeTokeniser_6b8548a9.o \ - $(OBJDIR)/juce_ComboBox_bcb5e365.o \ - $(OBJDIR)/juce_ImageComponent_1f90572a.o \ - $(OBJDIR)/juce_Label_7af0aab6.o \ - $(OBJDIR)/juce_ListBox_d4a8704f.o \ - $(OBJDIR)/juce_ProgressBar_38bc3ba8.o \ - $(OBJDIR)/juce_Slider_8a0d91a9.o \ - $(OBJDIR)/juce_TableHeaderComponent_2228124a.o \ - $(OBJDIR)/juce_TableListBox_588d027.o \ - $(OBJDIR)/juce_TextEditor_abe7dfc2.o \ - $(OBJDIR)/juce_Toolbar_29fa8c7d.o \ - $(OBJDIR)/juce_ToolbarItemComponent_7fab8ff7.o \ - $(OBJDIR)/juce_ToolbarItemPalette_250807b5.o \ - $(OBJDIR)/juce_TreeView_f1a8d26b.o \ - $(OBJDIR)/juce_DirectoryContentsDisplayComponent_97e43c62.o \ - $(OBJDIR)/juce_DirectoryContentsList_31e06025.o \ - $(OBJDIR)/juce_FileBrowserComponent_1332771b.o \ - $(OBJDIR)/juce_FileChooser_c439271f.o \ - $(OBJDIR)/juce_FileChooserDialogBox_50a36f4e.o \ - $(OBJDIR)/juce_FileFilter_de71639e.o \ - $(OBJDIR)/juce_FileListComponent_3f41b6a3.o \ - $(OBJDIR)/juce_FilenameComponent_921ef5f6.o \ - $(OBJDIR)/juce_FileSearchPathListComponent_85ed8576.o \ - $(OBJDIR)/juce_FileTreeComponent_8cb2d3a3.o \ - $(OBJDIR)/juce_ImagePreviewComponent_a108ea50.o \ - $(OBJDIR)/juce_WildcardFileFilter_9337b18.o \ - $(OBJDIR)/juce_CaretComponent_26bf4433.o \ - $(OBJDIR)/juce_KeyboardFocusTraverser_6325fc08.o \ - $(OBJDIR)/juce_KeyListener_631ada24.o \ - $(OBJDIR)/juce_KeyMappingEditorComponent_a0183a92.o \ - $(OBJDIR)/juce_KeyPress_47fcc29d.o \ - $(OBJDIR)/juce_KeyPressMappingSet_26212371.o \ - $(OBJDIR)/juce_ModifierKeys_eea16d64.o \ - $(OBJDIR)/juce_ComponentAnimator_ad5663d2.o \ - $(OBJDIR)/juce_ComponentBoundsConstrainer_a33c10ae.o \ - $(OBJDIR)/juce_ComponentBuilder_2aa6c5a.o \ - $(OBJDIR)/juce_ComponentMovementWatcher_cbb3e7cc.o \ - $(OBJDIR)/juce_GroupComponent_456e237a.o \ - $(OBJDIR)/juce_MultiDocumentPanel_50e05aac.o \ - $(OBJDIR)/juce_ResizableBorderComponent_7f4f2182.o \ - $(OBJDIR)/juce_ResizableCornerComponent_1cac2df9.o \ - $(OBJDIR)/juce_ResizableEdgeComponent_b9c9291.o \ - $(OBJDIR)/juce_ScrollBar_89666ad4.o \ - $(OBJDIR)/juce_StretchableLayoutManager_6bf5d800.o \ - $(OBJDIR)/juce_StretchableLayoutResizerBar_a720084c.o \ - $(OBJDIR)/juce_StretchableObjectResizer_2edcfadc.o \ - $(OBJDIR)/juce_TabbedButtonBar_a760aaa3.o \ - $(OBJDIR)/juce_TabbedComponent_d618721f.o \ - $(OBJDIR)/juce_Viewport_6c983422.o \ - $(OBJDIR)/juce_LookAndFeel_d4e838ec.o \ - $(OBJDIR)/juce_OldSchoolLookAndFeel_5ece559f.o \ - $(OBJDIR)/juce_MenuBarComponent_c68c8dbb.o \ - $(OBJDIR)/juce_MenuBarModel_ede42267.o \ - $(OBJDIR)/juce_PopupMenu_ec4cf9a3.o \ - $(OBJDIR)/juce_ComponentDragger_fb3bdbe6.o \ - $(OBJDIR)/juce_DragAndDropContainer_553e412.o \ - $(OBJDIR)/juce_MouseCursor_afb68802.o \ - $(OBJDIR)/juce_MouseEvent_f6ca6078.o \ - $(OBJDIR)/juce_MouseInputSource_8904aa23.o \ - $(OBJDIR)/juce_MouseListener_eb73f8a0.o \ - $(OBJDIR)/juce_MarkerList_2fbb4ef.o \ - $(OBJDIR)/juce_RelativeCoordinate_ab2eee5b.o \ - $(OBJDIR)/juce_RelativeCoordinatePositioner_c1352791.o \ - $(OBJDIR)/juce_RelativeParallelogram_5d17dbe6.o \ - $(OBJDIR)/juce_RelativePoint_9d2cc957.o \ - $(OBJDIR)/juce_RelativePointPath_a4fed61c.o \ - $(OBJDIR)/juce_RelativeRectangle_cc5440b6.o \ - $(OBJDIR)/juce_BooleanPropertyComponent_92b54aa5.o \ - $(OBJDIR)/juce_ButtonPropertyComponent_3675d6bb.o \ - $(OBJDIR)/juce_ChoicePropertyComponent_b9b44bac.o \ - $(OBJDIR)/juce_PropertyComponent_df1eaecd.o \ - $(OBJDIR)/juce_PropertyPanel_c640c5d4.o \ - $(OBJDIR)/juce_SliderPropertyComponent_ba2eb86c.o \ - $(OBJDIR)/juce_TextPropertyComponent_977e6fa0.o \ - $(OBJDIR)/juce_AudioDeviceSelectorComponent_64b1a089.o \ - $(OBJDIR)/juce_BubbleComponent_5f51c164.o \ - $(OBJDIR)/juce_BubbleMessageComponent_22f737f9.o \ - $(OBJDIR)/juce_ColourSelector_ac8bb1e2.o \ - $(OBJDIR)/juce_DropShadower_5903f9f3.o \ - $(OBJDIR)/juce_MidiKeyboardComponent_896e2ac8.o \ - $(OBJDIR)/juce_OpenGLComponent_73944221.o \ - $(OBJDIR)/juce_PreferencesPanel_dbc7d503.o \ - $(OBJDIR)/juce_SystemTrayIconComponent_fa664512.o \ - $(OBJDIR)/juce_AlertWindow_94d8d1f5.o \ - $(OBJDIR)/juce_CallOutBox_61f42d7c.o \ - $(OBJDIR)/juce_ComponentPeer_1e4b4b08.o \ - $(OBJDIR)/juce_DialogWindow_535b27b9.o \ - $(OBJDIR)/juce_DocumentWindow_3cb9d4cc.o \ - $(OBJDIR)/juce_ResizableWindow_d2110a84.o \ - $(OBJDIR)/juce_SplashScreen_a0940094.o \ - $(OBJDIR)/juce_ThreadWithProgressWindow_d711ee6e.o \ - $(OBJDIR)/juce_TooltipWindow_45074edc.o \ - $(OBJDIR)/juce_TopLevelWindow_717cf1e0.o \ - $(OBJDIR)/juce_Colour_453f3d5.o \ - $(OBJDIR)/juce_ColourGradient_c63d0725.o \ - $(OBJDIR)/juce_Colours_89de9488.o \ - $(OBJDIR)/juce_EdgeTable_6a5fefda.o \ - $(OBJDIR)/juce_FillType_5805677e.o \ - $(OBJDIR)/juce_GraphicsContext_119e43ed.o \ - $(OBJDIR)/juce_Justification_dc284c3b.o \ - $(OBJDIR)/juce_LowLevelGraphicsPostScriptRenderer_2e8a92a.o \ - $(OBJDIR)/juce_LowLevelGraphicsSoftwareRenderer_97263906.o \ - $(OBJDIR)/juce_RectanglePlacement_5fc90ed7.o \ - $(OBJDIR)/juce_Drawable_8c1eccc6.o \ - $(OBJDIR)/juce_DrawableComposite_4cd2d2ab.o \ - $(OBJDIR)/juce_DrawableImage_53f04eff.o \ - $(OBJDIR)/juce_DrawablePath_fb538a0b.o \ - $(OBJDIR)/juce_DrawableRectangle_5f2f5993.o \ - $(OBJDIR)/juce_DrawableShape_26926245.o \ - $(OBJDIR)/juce_DrawableText_75eda713.o \ - $(OBJDIR)/juce_SVGParser_b79416c5.o \ - $(OBJDIR)/juce_DropShadowEffect_da52d75.o \ - $(OBJDIR)/juce_GlowEffect_c0959893.o \ - $(OBJDIR)/juce_CustomTypeface_b93a3eff.o \ - $(OBJDIR)/juce_Font_fa88db26.o \ - $(OBJDIR)/juce_GlyphArrangement_f0797295.o \ - $(OBJDIR)/juce_TextLayout_d18f700e.o \ - $(OBJDIR)/juce_Typeface_34b3026e.o \ - $(OBJDIR)/juce_AffineTransform_4a320188.o \ - $(OBJDIR)/juce_Path_dcdd4594.o \ - $(OBJDIR)/juce_PathIterator_4e116c22.o \ - $(OBJDIR)/juce_PathStrokeType_506dcb86.o \ - $(OBJDIR)/juce_RectangleList_b6ae7ee8.o \ - $(OBJDIR)/juce_GIFLoader_61887b90.o \ - $(OBJDIR)/juce_JPEGLoader_412d2ccc.o \ - $(OBJDIR)/juce_PNGLoader_7f80a3b5.o \ - $(OBJDIR)/juce_Image_790c9a1a.o \ - $(OBJDIR)/juce_ImageCache_e74a50d2.o \ - $(OBJDIR)/juce_ImageConvolutionKernel_4e9e7945.o \ - $(OBJDIR)/juce_ImageFileFormat_161e770d.o \ - $(OBJDIR)/juce_DirectoryIterator_24c60d54.o \ - $(OBJDIR)/juce_File_8244d8d.o \ - $(OBJDIR)/juce_FileInputStream_e14097a7.o \ - $(OBJDIR)/juce_FileOutputStream_d151050e.o \ - $(OBJDIR)/juce_FileSearchPath_30e3d71a.o \ - $(OBJDIR)/juce_NamedPipe_b3a205e0.o \ - $(OBJDIR)/juce_TemporaryFile_935f3fc6.o \ - $(OBJDIR)/juce_ZipFile_16fbb396.o \ - $(OBJDIR)/juce_MACAddress_b81987ed.o \ - $(OBJDIR)/juce_Socket_cf39c63b.o \ - $(OBJDIR)/juce_URL_d6b7cff1.o \ - $(OBJDIR)/juce_BufferedInputStream_c71b2b68.o \ - $(OBJDIR)/juce_FileInputSource_2a374046.o \ - $(OBJDIR)/juce_GZIPCompressorOutputStream_4409282d.o \ - $(OBJDIR)/juce_GZIPDecompressorInputStream_b026ffc7.o \ - $(OBJDIR)/juce_InputStream_5314e647.o \ - $(OBJDIR)/juce_MemoryInputStream_c5db0106.o \ - $(OBJDIR)/juce_MemoryOutputStream_8003c78f.o \ - $(OBJDIR)/juce_OutputStream_9a068a6e.o \ - $(OBJDIR)/juce_SubregionStream_9156f331.o \ - $(OBJDIR)/juce_BigInteger_b44f43d6.o \ - $(OBJDIR)/juce_Expression_6f910d50.o \ - $(OBJDIR)/juce_Random_a529cb7b.o \ - $(OBJDIR)/juce_MemoryBlock_52f17c52.o \ - $(OBJDIR)/juce_posix_NamedPipe_aa308c65.o \ - $(OBJDIR)/juce_linux_Audio_18d7e8b6.o \ - $(OBJDIR)/juce_linux_AudioCDReader_1263363a.o \ - $(OBJDIR)/juce_linux_Clipboard_44a6bcf6.o \ - $(OBJDIR)/juce_linux_FileChooser_3b3f403f.o \ - $(OBJDIR)/juce_linux_Files_c036ced7.o \ - $(OBJDIR)/juce_linux_Fonts_b2e303e4.o \ - $(OBJDIR)/juce_linux_JackAudio_15353e17.o \ - $(OBJDIR)/juce_linux_Messaging_daefaf64.o \ - $(OBJDIR)/juce_linux_Midi_4bad86cb.o \ - $(OBJDIR)/juce_linux_NativeCode_8a61cd0e.o \ - $(OBJDIR)/juce_linux_Network_f47a1c4e.o \ - $(OBJDIR)/juce_linux_OpenGLComponent_ba2f042e.o \ - $(OBJDIR)/juce_linux_SystemStats_9f6d6b50.o \ - $(OBJDIR)/juce_linux_Threads_dc4a4049.o \ - $(OBJDIR)/juce_linux_WebBrowserComponent_358c0a49.o \ - $(OBJDIR)/juce_linux_Windowing_abe04752.o \ - $(OBJDIR)/juce_ios_Audio_40e86914.o \ - $(OBJDIR)/juce_mac_CoreAudio_faf8c177.o \ - $(OBJDIR)/juce_mac_CoreMidi_e79e11ea.o \ - $(OBJDIR)/juce_win32_ActiveXComponent_7590131d.o \ - $(OBJDIR)/juce_win32_ASIO_60eb61ca.o \ - $(OBJDIR)/juce_win32_AudioCDReader_66c7252.o \ - $(OBJDIR)/juce_win32_CameraDevice_ea35306d.o \ - $(OBJDIR)/juce_win32_Direct2DGraphicsContext_9f1b6be1.o \ - $(OBJDIR)/juce_win32_DirectShowComponent_e4030c4f.o \ - $(OBJDIR)/juce_win32_DirectSound_3462415e.o \ - $(OBJDIR)/juce_win32_FileChooser_18a257.o \ - $(OBJDIR)/juce_win32_Files_f3e9a2ef.o \ - $(OBJDIR)/juce_win32_Fonts_e695d7fc.o \ - $(OBJDIR)/juce_win32_Messaging_926ab77c.o \ - $(OBJDIR)/juce_win32_Midi_fac3cfb3.o \ - $(OBJDIR)/juce_win32_NativeCode_c247c7f6.o \ - $(OBJDIR)/juce_win32_Network_6c84a66.o \ - $(OBJDIR)/juce_win32_OpenGLComponent_d0d99a46.o \ - $(OBJDIR)/juce_win32_QuickTimeMovieComponent_be08e5f.o \ - $(OBJDIR)/juce_win32_Registry_86da784f.o \ - $(OBJDIR)/juce_win32_SystemStats_6446cd68.o \ - $(OBJDIR)/juce_win32_Threads_ee986e61.o \ - $(OBJDIR)/juce_win32_WASAPI_c7c6c3c3.o \ - $(OBJDIR)/juce_win32_WebBrowserComponent_2a4dd461.o \ - $(OBJDIR)/juce_win32_Windowing_635b4f6a.o \ - $(OBJDIR)/juce_android_Audio_93f83bd6.o \ - $(OBJDIR)/juce_android_CameraDevice_d2743865.o \ - $(OBJDIR)/juce_android_FileChooser_205cbb5f.o \ - $(OBJDIR)/juce_android_Files_3b5721f7.o \ - $(OBJDIR)/juce_android_Fonts_2e035704.o \ - $(OBJDIR)/juce_android_GraphicsContext_d0fb27e4.o \ - $(OBJDIR)/juce_android_Messaging_59717284.o \ - $(OBJDIR)/juce_android_Midi_4fa64fab.o \ - $(OBJDIR)/juce_android_Misc_68ea73f6.o \ - $(OBJDIR)/juce_android_NativeCode_dc186dee.o \ - $(OBJDIR)/juce_android_Network_28d2276e.o \ - $(OBJDIR)/juce_android_OpenGLComponent_8fd9ef4e.o \ - $(OBJDIR)/juce_android_SystemStats_848ae670.o \ - $(OBJDIR)/juce_android_Threads_10a24b69.o \ - $(OBJDIR)/juce_android_WebBrowserComponent_178c6569.o \ - $(OBJDIR)/juce_android_Windowing_2a620a72.o \ - $(OBJDIR)/juce_CharacterFunctions_b1a5ac62.o \ - $(OBJDIR)/juce_Identifier_e99ee619.o \ - $(OBJDIR)/juce_JSON_bbf64af8.o \ - $(OBJDIR)/juce_LocalisedStrings_3ddfa55e.o \ - $(OBJDIR)/juce_String_80587b01.o \ - $(OBJDIR)/juce_StringArray_4aaa67a2.o \ - $(OBJDIR)/juce_StringPairArray_37130fe8.o \ - $(OBJDIR)/juce_StringPool_9e8d033d.o \ - $(OBJDIR)/juce_XmlDocument_6b9b0c2c.o \ - $(OBJDIR)/juce_XmlElement_51daa55.o \ - $(OBJDIR)/juce_ReadWriteLock_7acf3cc8.o \ - $(OBJDIR)/juce_Thread_69734d40.o \ - $(OBJDIR)/juce_ThreadPool_fd669dfc.o \ - $(OBJDIR)/juce_TimeSliceThread_e9db3803.o \ - $(OBJDIR)/juce_DeletedAtShutdown_b9105375.o \ - $(OBJDIR)/juce_FileBasedDocument_d507d0a5.o \ - $(OBJDIR)/juce_PropertiesFile_8faca026.o \ - $(OBJDIR)/juce_RecentlyOpenedFilesList_f791257.o \ - $(OBJDIR)/juce_UndoManager_33b197fc.o \ - $(OBJDIR)/juce_UnitTest_4a02c10d.o \ - -.PHONY: clean - -$(OUTDIR)/$(TARGET): $(OBJECTS) $(LDDEPS) $(RESOURCES) - @echo Linking Juce - -@mkdir -p $(BINDIR) - -@mkdir -p $(LIBDIR) - -@mkdir -p $(OUTDIR) - @$(BLDCMD) - -clean: - @echo Cleaning Juce - -@rm -f $(OUTDIR)/$(TARGET) - -@rm -rf $(OBJDIR)/* - -@rm -rf $(OBJDIR) - -$(OBJDIR)/juce_Application_2817465d.o: ../../src/application/juce_Application.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_Application.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_ApplicationCommandInfo_80671406.o: ../../src/application/juce_ApplicationCommandInfo.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_ApplicationCommandInfo.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_ApplicationCommandManager_5aac95f.o: ../../src/application/juce_ApplicationCommandManager.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_ApplicationCommandManager.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_ApplicationCommandTarget_90a89aa9.o: ../../src/application/juce_ApplicationCommandTarget.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_ApplicationCommandTarget.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_ApplicationProperties_a76b5c30.o: ../../src/application/juce_ApplicationProperties.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_ApplicationProperties.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_AiffAudioFormat_ffbda971.o: ../../src/audio/audio_file_formats/juce_AiffAudioFormat.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_AiffAudioFormat.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_AudioCDReader_c730f7a6.o: ../../src/audio/audio_file_formats/juce_AudioCDReader.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_AudioCDReader.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_AudioFormat_6605d0f9.o: ../../src/audio/audio_file_formats/juce_AudioFormat.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_AudioFormat.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_AudioFormatManager_949148fe.o: ../../src/audio/audio_file_formats/juce_AudioFormatManager.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_AudioFormatManager.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_AudioFormatReader_36f0295c.o: ../../src/audio/audio_file_formats/juce_AudioFormatReader.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_AudioFormatReader.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_AudioFormatWriter_11461d0c.o: ../../src/audio/audio_file_formats/juce_AudioFormatWriter.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_AudioFormatWriter.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_AudioSubsectionReader_65f61a0a.o: ../../src/audio/audio_file_formats/juce_AudioSubsectionReader.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_AudioSubsectionReader.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_AudioThumbnail_cb99b4b4.o: ../../src/audio/audio_file_formats/juce_AudioThumbnail.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_AudioThumbnail.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_AudioThumbnailCache_89a7c678.o: ../../src/audio/audio_file_formats/juce_AudioThumbnailCache.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_AudioThumbnailCache.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_CoreAudioFormat_1ce243da.o: ../../src/audio/audio_file_formats/juce_CoreAudioFormat.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_CoreAudioFormat.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_FlacAudioFormat_19c048f1.o: ../../src/audio/audio_file_formats/juce_FlacAudioFormat.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_FlacAudioFormat.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_OggVorbisAudioFormat_3f214fc9.o: ../../src/audio/audio_file_formats/juce_OggVorbisAudioFormat.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_OggVorbisAudioFormat.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_QuickTimeAudioFormat_8ad67271.o: ../../src/audio/audio_file_formats/juce_QuickTimeAudioFormat.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_QuickTimeAudioFormat.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_WavAudioFormat_4ff23a5f.o: ../../src/audio/audio_file_formats/juce_WavAudioFormat.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_WavAudioFormat.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_AudioFormatReaderSource_13d4af92.o: ../../src/audio/audio_sources/juce_AudioFormatReaderSource.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_AudioFormatReaderSource.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_AudioSourcePlayer_42464899.o: ../../src/audio/audio_sources/juce_AudioSourcePlayer.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_AudioSourcePlayer.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_AudioTransportSource_f3e60751.o: ../../src/audio/audio_sources/juce_AudioTransportSource.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_AudioTransportSource.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_BufferingAudioSource_58721b72.o: ../../src/audio/audio_sources/juce_BufferingAudioSource.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_BufferingAudioSource.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_ChannelRemappingAudioSource_e17f93c0.o: ../../src/audio/audio_sources/juce_ChannelRemappingAudioSource.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_ChannelRemappingAudioSource.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_IIRFilterAudioSource_807ee8aa.o: ../../src/audio/audio_sources/juce_IIRFilterAudioSource.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_IIRFilterAudioSource.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_MixerAudioSource_bc6f772b.o: ../../src/audio/audio_sources/juce_MixerAudioSource.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_MixerAudioSource.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_ResamplingAudioSource_8511875e.o: ../../src/audio/audio_sources/juce_ResamplingAudioSource.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_ResamplingAudioSource.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_ReverbAudioSource_3ae42aa6.o: ../../src/audio/audio_sources/juce_ReverbAudioSource.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_ReverbAudioSource.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_ToneGeneratorAudioSource_77f504b3.o: ../../src/audio/audio_sources/juce_ToneGeneratorAudioSource.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_ToneGeneratorAudioSource.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_AudioDeviceManager_c24db832.o: ../../src/audio/devices/juce_AudioDeviceManager.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_AudioDeviceManager.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_AudioIODevice_f7da876b.o: ../../src/audio/devices/juce_AudioIODevice.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_AudioIODevice.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_AudioIODeviceType_e5d402c5.o: ../../src/audio/devices/juce_AudioIODeviceType.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_AudioIODeviceType.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_AudioDataConverters_dc0ece28.o: ../../src/audio/dsp/juce_AudioDataConverters.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_AudioDataConverters.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_AudioSampleBuffer_af6ff195.o: ../../src/audio/dsp/juce_AudioSampleBuffer.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_AudioSampleBuffer.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_IIRFilter_9a31e47f.o: ../../src/audio/dsp/juce_IIRFilter.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_IIRFilter.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_MidiBuffer_fa4db7fe.o: ../../src/audio/midi/juce_MidiBuffer.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_MidiBuffer.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_MidiFile_3bdbc97a.o: ../../src/audio/midi/juce_MidiFile.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_MidiFile.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_MidiKeyboardState_28313976.o: ../../src/audio/midi/juce_MidiKeyboardState.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_MidiKeyboardState.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_MidiMessage_5b1f5753.o: ../../src/audio/midi/juce_MidiMessage.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_MidiMessage.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_MidiMessageCollector_108abdc4.o: ../../src/audio/midi/juce_MidiMessageCollector.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_MidiMessageCollector.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_MidiMessageSequence_a577dcb4.o: ../../src/audio/midi/juce_MidiMessageSequence.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_MidiMessageSequence.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_MidiOutput_3cc0f43f.o: ../../src/audio/midi/juce_MidiOutput.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_MidiOutput.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_VSTPluginFormat_af341d6.o: ../../src/audio/plugin_host/formats/juce_VSTPluginFormat.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_VSTPluginFormat.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_AudioPluginFormat_5dc1eec2.o: ../../src/audio/plugin_host/juce_AudioPluginFormat.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_AudioPluginFormat.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_AudioPluginFormatManager_c336c715.o: ../../src/audio/plugin_host/juce_AudioPluginFormatManager.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_AudioPluginFormatManager.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_KnownPluginList_cadece16.o: ../../src/audio/plugin_host/juce_KnownPluginList.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_KnownPluginList.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_PluginDescription_d9c0f10b.o: ../../src/audio/plugin_host/juce_PluginDescription.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_PluginDescription.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_PluginDirectoryScanner_c7652cec.o: ../../src/audio/plugin_host/juce_PluginDirectoryScanner.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_PluginDirectoryScanner.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_PluginListComponent_f08a630e.o: ../../src/audio/plugin_host/juce_PluginListComponent.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_PluginListComponent.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_AudioProcessor_babd0919.o: ../../src/audio/processors/juce_AudioProcessor.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_AudioProcessor.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_AudioProcessorEditor_82a32d26.o: ../../src/audio/processors/juce_AudioProcessorEditor.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_AudioProcessorEditor.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_AudioProcessorGraph_76dcb4ff.o: ../../src/audio/processors/juce_AudioProcessorGraph.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_AudioProcessorGraph.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_AudioProcessorPlayer_5c53cc9a.o: ../../src/audio/processors/juce_AudioProcessorPlayer.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_AudioProcessorPlayer.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_GenericAudioProcessorEditor_2e8ec30d.o: ../../src/audio/processors/juce_GenericAudioProcessorEditor.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_GenericAudioProcessorEditor.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_Sampler_98f716a4.o: ../../src/audio/synthesisers/juce_Sampler.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_Sampler.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_Synthesiser_2bffa1dd.o: ../../src/audio/synthesisers/juce_Synthesiser.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_Synthesiser.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_AbstractFifo_dfc0bd23.o: ../../src/containers/juce_AbstractFifo.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_AbstractFifo.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_DynamicObject_69d02ab3.o: ../../src/containers/juce_DynamicObject.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_DynamicObject.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_NamedValueSet_6b0793df.o: ../../src/containers/juce_NamedValueSet.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_NamedValueSet.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_PropertySet_914b5922.o: ../../src/containers/juce_PropertySet.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_PropertySet.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_Value_16231646.o: ../../src/containers/juce_Value.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_Value.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_ValueTree_f822be84.o: ../../src/containers/juce_ValueTree.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_ValueTree.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_Variant_4f31c35a.o: ../../src/containers/juce_Variant.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_Variant.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_FileLogger_7858478e.o: ../../src/core/juce_FileLogger.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_FileLogger.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_Logger_4f4f7f72.o: ../../src/core/juce_Logger.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_Logger.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_PerformanceCounter_6422080e.o: ../../src/core/juce_PerformanceCounter.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_PerformanceCounter.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_RelativeTime_bc5ef35b.o: ../../src/core/juce_RelativeTime.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_RelativeTime.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_Result_d8f437f.o: ../../src/core/juce_Result.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_Result.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_SystemStats_c00d8758.o: ../../src/core/juce_SystemStats.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_SystemStats.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_Time_16acdd6f.o: ../../src/core/juce_Time.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_Time.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_Uuid_f277575d.o: ../../src/core/juce_Uuid.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_Uuid.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_BlowFish_5d22a7d9.o: ../../src/cryptography/juce_BlowFish.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_BlowFish.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_MD5_56896819.o: ../../src/cryptography/juce_MD5.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_MD5.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_Primes_32e6603.o: ../../src/cryptography/juce_Primes.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_Primes.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_RSAKey_b60982ae.o: ../../src/cryptography/juce_RSAKey.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_RSAKey.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_SHA256_cb4da0d6.o: ../../src/cryptography/juce_SHA256.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_SHA256.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_ActionBroadcaster_7f997786.o: ../../src/events/juce_ActionBroadcaster.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_ActionBroadcaster.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_AsyncUpdater_a7e1cb89.o: ../../src/events/juce_AsyncUpdater.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_AsyncUpdater.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_ChangeBroadcaster_3eb8fecc.o: ../../src/events/juce_ChangeBroadcaster.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_ChangeBroadcaster.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_InterprocessConnection_13086b6d.o: ../../src/events/juce_InterprocessConnection.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_InterprocessConnection.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_InterprocessConnectionServer_a4d7b350.o: ../../src/events/juce_InterprocessConnectionServer.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_InterprocessConnectionServer.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_Message_ac79f635.o: ../../src/events/juce_Message.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_Message.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_MessageListener_93e51509.o: ../../src/events/juce_MessageListener.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_MessageListener.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_MessageManager_c7e00842.o: ../../src/events/juce_MessageManager.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_MessageManager.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_MultiTimer_d4d9eca8.o: ../../src/events/juce_MultiTimer.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_MultiTimer.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_Timer_77c098b3.o: ../../src/events/juce_Timer.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_Timer.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_Component_49f01dfa.o: ../../src/gui/components/juce_Component.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_Component.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_ComponentListener_e0eda7ce.o: ../../src/gui/components/juce_ComponentListener.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_ComponentListener.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_Desktop_e3b47b99.o: ../../src/gui/components/juce_Desktop.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_Desktop.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_ModalComponentManager_b87bddba.o: ../../src/gui/components/juce_ModalComponentManager.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_ModalComponentManager.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_ArrowButton_ebac7066.o: ../../src/gui/components/buttons/juce_ArrowButton.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_ArrowButton.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_Button_886d3491.o: ../../src/gui/components/buttons/juce_Button.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_Button.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_DrawableButton_e03899cf.o: ../../src/gui/components/buttons/juce_DrawableButton.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_DrawableButton.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_HyperlinkButton_af0a8983.o: ../../src/gui/components/buttons/juce_HyperlinkButton.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_HyperlinkButton.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_ImageButton_c4dda738.o: ../../src/gui/components/buttons/juce_ImageButton.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_ImageButton.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_ShapeButton_2359adfe.o: ../../src/gui/components/buttons/juce_ShapeButton.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_ShapeButton.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_TextButton_8cf49c9e.o: ../../src/gui/components/buttons/juce_TextButton.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_TextButton.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_ToggleButton_f69cb85.o: ../../src/gui/components/buttons/juce_ToggleButton.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_ToggleButton.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_ToolbarButton_884113d8.o: ../../src/gui/components/buttons/juce_ToolbarButton.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_ToolbarButton.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_CodeDocument_fdd87805.o: ../../src/gui/components/code_editor/juce_CodeDocument.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_CodeDocument.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_CodeEditorComponent_6fe4a170.o: ../../src/gui/components/code_editor/juce_CodeEditorComponent.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_CodeEditorComponent.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_CPlusPlusCodeTokeniser_6b8548a9.o: ../../src/gui/components/code_editor/juce_CPlusPlusCodeTokeniser.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_CPlusPlusCodeTokeniser.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_ComboBox_bcb5e365.o: ../../src/gui/components/controls/juce_ComboBox.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_ComboBox.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_ImageComponent_1f90572a.o: ../../src/gui/components/controls/juce_ImageComponent.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_ImageComponent.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_Label_7af0aab6.o: ../../src/gui/components/controls/juce_Label.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_Label.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_ListBox_d4a8704f.o: ../../src/gui/components/controls/juce_ListBox.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_ListBox.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_ProgressBar_38bc3ba8.o: ../../src/gui/components/controls/juce_ProgressBar.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_ProgressBar.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_Slider_8a0d91a9.o: ../../src/gui/components/controls/juce_Slider.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_Slider.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_TableHeaderComponent_2228124a.o: ../../src/gui/components/controls/juce_TableHeaderComponent.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_TableHeaderComponent.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_TableListBox_588d027.o: ../../src/gui/components/controls/juce_TableListBox.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_TableListBox.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_TextEditor_abe7dfc2.o: ../../src/gui/components/controls/juce_TextEditor.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_TextEditor.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_Toolbar_29fa8c7d.o: ../../src/gui/components/controls/juce_Toolbar.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_Toolbar.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_ToolbarItemComponent_7fab8ff7.o: ../../src/gui/components/controls/juce_ToolbarItemComponent.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_ToolbarItemComponent.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_ToolbarItemPalette_250807b5.o: ../../src/gui/components/controls/juce_ToolbarItemPalette.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_ToolbarItemPalette.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_TreeView_f1a8d26b.o: ../../src/gui/components/controls/juce_TreeView.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_TreeView.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_DirectoryContentsDisplayComponent_97e43c62.o: ../../src/gui/components/filebrowser/juce_DirectoryContentsDisplayComponent.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_DirectoryContentsDisplayComponent.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_DirectoryContentsList_31e06025.o: ../../src/gui/components/filebrowser/juce_DirectoryContentsList.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_DirectoryContentsList.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_FileBrowserComponent_1332771b.o: ../../src/gui/components/filebrowser/juce_FileBrowserComponent.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_FileBrowserComponent.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_FileChooser_c439271f.o: ../../src/gui/components/filebrowser/juce_FileChooser.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_FileChooser.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_FileChooserDialogBox_50a36f4e.o: ../../src/gui/components/filebrowser/juce_FileChooserDialogBox.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_FileChooserDialogBox.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_FileFilter_de71639e.o: ../../src/gui/components/filebrowser/juce_FileFilter.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_FileFilter.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_FileListComponent_3f41b6a3.o: ../../src/gui/components/filebrowser/juce_FileListComponent.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_FileListComponent.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_FilenameComponent_921ef5f6.o: ../../src/gui/components/filebrowser/juce_FilenameComponent.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_FilenameComponent.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_FileSearchPathListComponent_85ed8576.o: ../../src/gui/components/filebrowser/juce_FileSearchPathListComponent.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_FileSearchPathListComponent.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_FileTreeComponent_8cb2d3a3.o: ../../src/gui/components/filebrowser/juce_FileTreeComponent.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_FileTreeComponent.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_ImagePreviewComponent_a108ea50.o: ../../src/gui/components/filebrowser/juce_ImagePreviewComponent.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_ImagePreviewComponent.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_WildcardFileFilter_9337b18.o: ../../src/gui/components/filebrowser/juce_WildcardFileFilter.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_WildcardFileFilter.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_CaretComponent_26bf4433.o: ../../src/gui/components/keyboard/juce_CaretComponent.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_CaretComponent.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_KeyboardFocusTraverser_6325fc08.o: ../../src/gui/components/keyboard/juce_KeyboardFocusTraverser.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_KeyboardFocusTraverser.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_KeyListener_631ada24.o: ../../src/gui/components/keyboard/juce_KeyListener.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_KeyListener.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_KeyMappingEditorComponent_a0183a92.o: ../../src/gui/components/keyboard/juce_KeyMappingEditorComponent.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_KeyMappingEditorComponent.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_KeyPress_47fcc29d.o: ../../src/gui/components/keyboard/juce_KeyPress.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_KeyPress.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_KeyPressMappingSet_26212371.o: ../../src/gui/components/keyboard/juce_KeyPressMappingSet.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_KeyPressMappingSet.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_ModifierKeys_eea16d64.o: ../../src/gui/components/keyboard/juce_ModifierKeys.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_ModifierKeys.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_ComponentAnimator_ad5663d2.o: ../../src/gui/components/layout/juce_ComponentAnimator.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_ComponentAnimator.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_ComponentBoundsConstrainer_a33c10ae.o: ../../src/gui/components/layout/juce_ComponentBoundsConstrainer.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_ComponentBoundsConstrainer.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_ComponentBuilder_2aa6c5a.o: ../../src/gui/components/layout/juce_ComponentBuilder.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_ComponentBuilder.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_ComponentMovementWatcher_cbb3e7cc.o: ../../src/gui/components/layout/juce_ComponentMovementWatcher.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_ComponentMovementWatcher.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_GroupComponent_456e237a.o: ../../src/gui/components/layout/juce_GroupComponent.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_GroupComponent.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_MultiDocumentPanel_50e05aac.o: ../../src/gui/components/layout/juce_MultiDocumentPanel.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_MultiDocumentPanel.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_ResizableBorderComponent_7f4f2182.o: ../../src/gui/components/layout/juce_ResizableBorderComponent.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_ResizableBorderComponent.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_ResizableCornerComponent_1cac2df9.o: ../../src/gui/components/layout/juce_ResizableCornerComponent.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_ResizableCornerComponent.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_ResizableEdgeComponent_b9c9291.o: ../../src/gui/components/layout/juce_ResizableEdgeComponent.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_ResizableEdgeComponent.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_ScrollBar_89666ad4.o: ../../src/gui/components/layout/juce_ScrollBar.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_ScrollBar.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_StretchableLayoutManager_6bf5d800.o: ../../src/gui/components/layout/juce_StretchableLayoutManager.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_StretchableLayoutManager.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_StretchableLayoutResizerBar_a720084c.o: ../../src/gui/components/layout/juce_StretchableLayoutResizerBar.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_StretchableLayoutResizerBar.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_StretchableObjectResizer_2edcfadc.o: ../../src/gui/components/layout/juce_StretchableObjectResizer.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_StretchableObjectResizer.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_TabbedButtonBar_a760aaa3.o: ../../src/gui/components/layout/juce_TabbedButtonBar.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_TabbedButtonBar.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_TabbedComponent_d618721f.o: ../../src/gui/components/layout/juce_TabbedComponent.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_TabbedComponent.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_Viewport_6c983422.o: ../../src/gui/components/layout/juce_Viewport.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_Viewport.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_LookAndFeel_d4e838ec.o: ../../src/gui/components/lookandfeel/juce_LookAndFeel.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_LookAndFeel.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_OldSchoolLookAndFeel_5ece559f.o: ../../src/gui/components/lookandfeel/juce_OldSchoolLookAndFeel.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_OldSchoolLookAndFeel.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_MenuBarComponent_c68c8dbb.o: ../../src/gui/components/menus/juce_MenuBarComponent.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_MenuBarComponent.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_MenuBarModel_ede42267.o: ../../src/gui/components/menus/juce_MenuBarModel.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_MenuBarModel.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_PopupMenu_ec4cf9a3.o: ../../src/gui/components/menus/juce_PopupMenu.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_PopupMenu.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_ComponentDragger_fb3bdbe6.o: ../../src/gui/components/mouse/juce_ComponentDragger.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_ComponentDragger.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_DragAndDropContainer_553e412.o: ../../src/gui/components/mouse/juce_DragAndDropContainer.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_DragAndDropContainer.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_MouseCursor_afb68802.o: ../../src/gui/components/mouse/juce_MouseCursor.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_MouseCursor.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_MouseEvent_f6ca6078.o: ../../src/gui/components/mouse/juce_MouseEvent.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_MouseEvent.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_MouseInputSource_8904aa23.o: ../../src/gui/components/mouse/juce_MouseInputSource.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_MouseInputSource.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_MouseListener_eb73f8a0.o: ../../src/gui/components/mouse/juce_MouseListener.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_MouseListener.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_MarkerList_2fbb4ef.o: ../../src/gui/components/positioning/juce_MarkerList.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_MarkerList.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_RelativeCoordinate_ab2eee5b.o: ../../src/gui/components/positioning/juce_RelativeCoordinate.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_RelativeCoordinate.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_RelativeCoordinatePositioner_c1352791.o: ../../src/gui/components/positioning/juce_RelativeCoordinatePositioner.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_RelativeCoordinatePositioner.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_RelativeParallelogram_5d17dbe6.o: ../../src/gui/components/positioning/juce_RelativeParallelogram.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_RelativeParallelogram.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_RelativePoint_9d2cc957.o: ../../src/gui/components/positioning/juce_RelativePoint.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_RelativePoint.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_RelativePointPath_a4fed61c.o: ../../src/gui/components/positioning/juce_RelativePointPath.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_RelativePointPath.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_RelativeRectangle_cc5440b6.o: ../../src/gui/components/positioning/juce_RelativeRectangle.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_RelativeRectangle.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_BooleanPropertyComponent_92b54aa5.o: ../../src/gui/components/properties/juce_BooleanPropertyComponent.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_BooleanPropertyComponent.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_ButtonPropertyComponent_3675d6bb.o: ../../src/gui/components/properties/juce_ButtonPropertyComponent.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_ButtonPropertyComponent.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_ChoicePropertyComponent_b9b44bac.o: ../../src/gui/components/properties/juce_ChoicePropertyComponent.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_ChoicePropertyComponent.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_PropertyComponent_df1eaecd.o: ../../src/gui/components/properties/juce_PropertyComponent.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_PropertyComponent.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_PropertyPanel_c640c5d4.o: ../../src/gui/components/properties/juce_PropertyPanel.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_PropertyPanel.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_SliderPropertyComponent_ba2eb86c.o: ../../src/gui/components/properties/juce_SliderPropertyComponent.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_SliderPropertyComponent.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_TextPropertyComponent_977e6fa0.o: ../../src/gui/components/properties/juce_TextPropertyComponent.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_TextPropertyComponent.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_AudioDeviceSelectorComponent_64b1a089.o: ../../src/gui/components/special/juce_AudioDeviceSelectorComponent.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_AudioDeviceSelectorComponent.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_BubbleComponent_5f51c164.o: ../../src/gui/components/special/juce_BubbleComponent.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_BubbleComponent.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_BubbleMessageComponent_22f737f9.o: ../../src/gui/components/special/juce_BubbleMessageComponent.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_BubbleMessageComponent.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_ColourSelector_ac8bb1e2.o: ../../src/gui/components/special/juce_ColourSelector.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_ColourSelector.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_DropShadower_5903f9f3.o: ../../src/gui/components/special/juce_DropShadower.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_DropShadower.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_MidiKeyboardComponent_896e2ac8.o: ../../src/gui/components/special/juce_MidiKeyboardComponent.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_MidiKeyboardComponent.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_OpenGLComponent_73944221.o: ../../src/gui/components/special/juce_OpenGLComponent.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_OpenGLComponent.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_PreferencesPanel_dbc7d503.o: ../../src/gui/components/special/juce_PreferencesPanel.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_PreferencesPanel.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_SystemTrayIconComponent_fa664512.o: ../../src/gui/components/special/juce_SystemTrayIconComponent.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_SystemTrayIconComponent.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_AlertWindow_94d8d1f5.o: ../../src/gui/components/windows/juce_AlertWindow.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_AlertWindow.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_CallOutBox_61f42d7c.o: ../../src/gui/components/windows/juce_CallOutBox.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_CallOutBox.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_ComponentPeer_1e4b4b08.o: ../../src/gui/components/windows/juce_ComponentPeer.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_ComponentPeer.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_DialogWindow_535b27b9.o: ../../src/gui/components/windows/juce_DialogWindow.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_DialogWindow.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_DocumentWindow_3cb9d4cc.o: ../../src/gui/components/windows/juce_DocumentWindow.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_DocumentWindow.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_ResizableWindow_d2110a84.o: ../../src/gui/components/windows/juce_ResizableWindow.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_ResizableWindow.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_SplashScreen_a0940094.o: ../../src/gui/components/windows/juce_SplashScreen.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_SplashScreen.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_ThreadWithProgressWindow_d711ee6e.o: ../../src/gui/components/windows/juce_ThreadWithProgressWindow.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_ThreadWithProgressWindow.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_TooltipWindow_45074edc.o: ../../src/gui/components/windows/juce_TooltipWindow.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_TooltipWindow.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_TopLevelWindow_717cf1e0.o: ../../src/gui/components/windows/juce_TopLevelWindow.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_TopLevelWindow.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_Colour_453f3d5.o: ../../src/gui/graphics/colour/juce_Colour.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_Colour.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_ColourGradient_c63d0725.o: ../../src/gui/graphics/colour/juce_ColourGradient.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_ColourGradient.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_Colours_89de9488.o: ../../src/gui/graphics/colour/juce_Colours.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_Colours.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_EdgeTable_6a5fefda.o: ../../src/gui/graphics/contexts/juce_EdgeTable.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_EdgeTable.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_FillType_5805677e.o: ../../src/gui/graphics/contexts/juce_FillType.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_FillType.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_GraphicsContext_119e43ed.o: ../../src/gui/graphics/contexts/juce_GraphicsContext.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_GraphicsContext.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_Justification_dc284c3b.o: ../../src/gui/graphics/contexts/juce_Justification.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_Justification.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_LowLevelGraphicsPostScriptRenderer_2e8a92a.o: ../../src/gui/graphics/contexts/juce_LowLevelGraphicsPostScriptRenderer.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_LowLevelGraphicsPostScriptRenderer.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_LowLevelGraphicsSoftwareRenderer_97263906.o: ../../src/gui/graphics/contexts/juce_LowLevelGraphicsSoftwareRenderer.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_LowLevelGraphicsSoftwareRenderer.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_RectanglePlacement_5fc90ed7.o: ../../src/gui/graphics/contexts/juce_RectanglePlacement.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_RectanglePlacement.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_Drawable_8c1eccc6.o: ../../src/gui/graphics/drawables/juce_Drawable.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_Drawable.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_DrawableComposite_4cd2d2ab.o: ../../src/gui/graphics/drawables/juce_DrawableComposite.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_DrawableComposite.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_DrawableImage_53f04eff.o: ../../src/gui/graphics/drawables/juce_DrawableImage.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_DrawableImage.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_DrawablePath_fb538a0b.o: ../../src/gui/graphics/drawables/juce_DrawablePath.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_DrawablePath.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_DrawableRectangle_5f2f5993.o: ../../src/gui/graphics/drawables/juce_DrawableRectangle.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_DrawableRectangle.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_DrawableShape_26926245.o: ../../src/gui/graphics/drawables/juce_DrawableShape.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_DrawableShape.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_DrawableText_75eda713.o: ../../src/gui/graphics/drawables/juce_DrawableText.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_DrawableText.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_SVGParser_b79416c5.o: ../../src/gui/graphics/drawables/juce_SVGParser.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_SVGParser.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_DropShadowEffect_da52d75.o: ../../src/gui/graphics/effects/juce_DropShadowEffect.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_DropShadowEffect.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_GlowEffect_c0959893.o: ../../src/gui/graphics/effects/juce_GlowEffect.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_GlowEffect.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_CustomTypeface_b93a3eff.o: ../../src/gui/graphics/fonts/juce_CustomTypeface.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_CustomTypeface.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_Font_fa88db26.o: ../../src/gui/graphics/fonts/juce_Font.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_Font.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_GlyphArrangement_f0797295.o: ../../src/gui/graphics/fonts/juce_GlyphArrangement.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_GlyphArrangement.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_TextLayout_d18f700e.o: ../../src/gui/graphics/fonts/juce_TextLayout.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_TextLayout.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_Typeface_34b3026e.o: ../../src/gui/graphics/fonts/juce_Typeface.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_Typeface.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_AffineTransform_4a320188.o: ../../src/gui/graphics/geometry/juce_AffineTransform.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_AffineTransform.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_Path_dcdd4594.o: ../../src/gui/graphics/geometry/juce_Path.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_Path.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_PathIterator_4e116c22.o: ../../src/gui/graphics/geometry/juce_PathIterator.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_PathIterator.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_PathStrokeType_506dcb86.o: ../../src/gui/graphics/geometry/juce_PathStrokeType.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_PathStrokeType.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_RectangleList_b6ae7ee8.o: ../../src/gui/graphics/geometry/juce_RectangleList.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_RectangleList.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_GIFLoader_61887b90.o: ../../src/gui/graphics/imaging/image_file_formats/juce_GIFLoader.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_GIFLoader.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_JPEGLoader_412d2ccc.o: ../../src/gui/graphics/imaging/image_file_formats/juce_JPEGLoader.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_JPEGLoader.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_PNGLoader_7f80a3b5.o: ../../src/gui/graphics/imaging/image_file_formats/juce_PNGLoader.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_PNGLoader.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_Image_790c9a1a.o: ../../src/gui/graphics/imaging/juce_Image.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_Image.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_ImageCache_e74a50d2.o: ../../src/gui/graphics/imaging/juce_ImageCache.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_ImageCache.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_ImageConvolutionKernel_4e9e7945.o: ../../src/gui/graphics/imaging/juce_ImageConvolutionKernel.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_ImageConvolutionKernel.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_ImageFileFormat_161e770d.o: ../../src/gui/graphics/imaging/juce_ImageFileFormat.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_ImageFileFormat.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_DirectoryIterator_24c60d54.o: ../../src/io/files/juce_DirectoryIterator.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_DirectoryIterator.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_File_8244d8d.o: ../../src/io/files/juce_File.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_File.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_FileInputStream_e14097a7.o: ../../src/io/files/juce_FileInputStream.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_FileInputStream.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_FileOutputStream_d151050e.o: ../../src/io/files/juce_FileOutputStream.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_FileOutputStream.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_FileSearchPath_30e3d71a.o: ../../src/io/files/juce_FileSearchPath.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_FileSearchPath.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_NamedPipe_b3a205e0.o: ../../src/io/files/juce_NamedPipe.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_NamedPipe.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_TemporaryFile_935f3fc6.o: ../../src/io/files/juce_TemporaryFile.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_TemporaryFile.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_ZipFile_16fbb396.o: ../../src/io/files/juce_ZipFile.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_ZipFile.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_MACAddress_b81987ed.o: ../../src/io/network/juce_MACAddress.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_MACAddress.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_Socket_cf39c63b.o: ../../src/io/network/juce_Socket.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_Socket.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_URL_d6b7cff1.o: ../../src/io/network/juce_URL.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_URL.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_BufferedInputStream_c71b2b68.o: ../../src/io/streams/juce_BufferedInputStream.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_BufferedInputStream.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_FileInputSource_2a374046.o: ../../src/io/streams/juce_FileInputSource.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_FileInputSource.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_GZIPCompressorOutputStream_4409282d.o: ../../src/io/streams/juce_GZIPCompressorOutputStream.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_GZIPCompressorOutputStream.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_GZIPDecompressorInputStream_b026ffc7.o: ../../src/io/streams/juce_GZIPDecompressorInputStream.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_GZIPDecompressorInputStream.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_InputStream_5314e647.o: ../../src/io/streams/juce_InputStream.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_InputStream.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_MemoryInputStream_c5db0106.o: ../../src/io/streams/juce_MemoryInputStream.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_MemoryInputStream.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_MemoryOutputStream_8003c78f.o: ../../src/io/streams/juce_MemoryOutputStream.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_MemoryOutputStream.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_OutputStream_9a068a6e.o: ../../src/io/streams/juce_OutputStream.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_OutputStream.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_SubregionStream_9156f331.o: ../../src/io/streams/juce_SubregionStream.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_SubregionStream.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_BigInteger_b44f43d6.o: ../../src/maths/juce_BigInteger.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_BigInteger.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_Expression_6f910d50.o: ../../src/maths/juce_Expression.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_Expression.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_Random_a529cb7b.o: ../../src/maths/juce_Random.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_Random.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_MemoryBlock_52f17c52.o: ../../src/memory/juce_MemoryBlock.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_MemoryBlock.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_posix_NamedPipe_aa308c65.o: ../../src/native/common/juce_posix_NamedPipe.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_posix_NamedPipe.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_linux_Audio_18d7e8b6.o: ../../src/native/linux/juce_linux_Audio.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_linux_Audio.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_linux_AudioCDReader_1263363a.o: ../../src/native/linux/juce_linux_AudioCDReader.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_linux_AudioCDReader.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_linux_Clipboard_44a6bcf6.o: ../../src/native/linux/juce_linux_Clipboard.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_linux_Clipboard.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_linux_FileChooser_3b3f403f.o: ../../src/native/linux/juce_linux_FileChooser.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_linux_FileChooser.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_linux_Files_c036ced7.o: ../../src/native/linux/juce_linux_Files.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_linux_Files.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_linux_Fonts_b2e303e4.o: ../../src/native/linux/juce_linux_Fonts.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_linux_Fonts.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_linux_JackAudio_15353e17.o: ../../src/native/linux/juce_linux_JackAudio.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_linux_JackAudio.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_linux_Messaging_daefaf64.o: ../../src/native/linux/juce_linux_Messaging.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_linux_Messaging.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_linux_Midi_4bad86cb.o: ../../src/native/linux/juce_linux_Midi.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_linux_Midi.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_linux_NativeCode_8a61cd0e.o: ../../src/native/linux/juce_linux_NativeCode.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_linux_NativeCode.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_linux_Network_f47a1c4e.o: ../../src/native/linux/juce_linux_Network.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_linux_Network.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_linux_OpenGLComponent_ba2f042e.o: ../../src/native/linux/juce_linux_OpenGLComponent.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_linux_OpenGLComponent.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_linux_SystemStats_9f6d6b50.o: ../../src/native/linux/juce_linux_SystemStats.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_linux_SystemStats.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_linux_Threads_dc4a4049.o: ../../src/native/linux/juce_linux_Threads.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_linux_Threads.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_linux_WebBrowserComponent_358c0a49.o: ../../src/native/linux/juce_linux_WebBrowserComponent.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_linux_WebBrowserComponent.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_linux_Windowing_abe04752.o: ../../src/native/linux/juce_linux_Windowing.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_linux_Windowing.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_ios_Audio_40e86914.o: ../../src/native/mac/juce_ios_Audio.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_ios_Audio.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_mac_CoreAudio_faf8c177.o: ../../src/native/mac/juce_mac_CoreAudio.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_mac_CoreAudio.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_mac_CoreMidi_e79e11ea.o: ../../src/native/mac/juce_mac_CoreMidi.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_mac_CoreMidi.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_win32_ActiveXComponent_7590131d.o: ../../src/native/windows/juce_win32_ActiveXComponent.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_win32_ActiveXComponent.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_win32_ASIO_60eb61ca.o: ../../src/native/windows/juce_win32_ASIO.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_win32_ASIO.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_win32_AudioCDReader_66c7252.o: ../../src/native/windows/juce_win32_AudioCDReader.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_win32_AudioCDReader.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_win32_CameraDevice_ea35306d.o: ../../src/native/windows/juce_win32_CameraDevice.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_win32_CameraDevice.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_win32_Direct2DGraphicsContext_9f1b6be1.o: ../../src/native/windows/juce_win32_Direct2DGraphicsContext.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_win32_Direct2DGraphicsContext.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_win32_DirectShowComponent_e4030c4f.o: ../../src/native/windows/juce_win32_DirectShowComponent.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_win32_DirectShowComponent.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_win32_DirectSound_3462415e.o: ../../src/native/windows/juce_win32_DirectSound.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_win32_DirectSound.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_win32_FileChooser_18a257.o: ../../src/native/windows/juce_win32_FileChooser.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_win32_FileChooser.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_win32_Files_f3e9a2ef.o: ../../src/native/windows/juce_win32_Files.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_win32_Files.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_win32_Fonts_e695d7fc.o: ../../src/native/windows/juce_win32_Fonts.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_win32_Fonts.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_win32_Messaging_926ab77c.o: ../../src/native/windows/juce_win32_Messaging.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_win32_Messaging.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_win32_Midi_fac3cfb3.o: ../../src/native/windows/juce_win32_Midi.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_win32_Midi.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_win32_NativeCode_c247c7f6.o: ../../src/native/windows/juce_win32_NativeCode.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_win32_NativeCode.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_win32_Network_6c84a66.o: ../../src/native/windows/juce_win32_Network.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_win32_Network.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_win32_OpenGLComponent_d0d99a46.o: ../../src/native/windows/juce_win32_OpenGLComponent.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_win32_OpenGLComponent.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_win32_QuickTimeMovieComponent_be08e5f.o: ../../src/native/windows/juce_win32_QuickTimeMovieComponent.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_win32_QuickTimeMovieComponent.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_win32_Registry_86da784f.o: ../../src/native/windows/juce_win32_Registry.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_win32_Registry.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_win32_SystemStats_6446cd68.o: ../../src/native/windows/juce_win32_SystemStats.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_win32_SystemStats.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_win32_Threads_ee986e61.o: ../../src/native/windows/juce_win32_Threads.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_win32_Threads.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_win32_WASAPI_c7c6c3c3.o: ../../src/native/windows/juce_win32_WASAPI.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_win32_WASAPI.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_win32_WebBrowserComponent_2a4dd461.o: ../../src/native/windows/juce_win32_WebBrowserComponent.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_win32_WebBrowserComponent.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_win32_Windowing_635b4f6a.o: ../../src/native/windows/juce_win32_Windowing.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_win32_Windowing.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_android_Audio_93f83bd6.o: ../../src/native/android/juce_android_Audio.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_android_Audio.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_android_CameraDevice_d2743865.o: ../../src/native/android/juce_android_CameraDevice.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_android_CameraDevice.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_android_FileChooser_205cbb5f.o: ../../src/native/android/juce_android_FileChooser.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_android_FileChooser.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_android_Files_3b5721f7.o: ../../src/native/android/juce_android_Files.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_android_Files.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_android_Fonts_2e035704.o: ../../src/native/android/juce_android_Fonts.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_android_Fonts.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_android_GraphicsContext_d0fb27e4.o: ../../src/native/android/juce_android_GraphicsContext.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_android_GraphicsContext.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_android_Messaging_59717284.o: ../../src/native/android/juce_android_Messaging.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_android_Messaging.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_android_Midi_4fa64fab.o: ../../src/native/android/juce_android_Midi.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_android_Midi.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_android_Misc_68ea73f6.o: ../../src/native/android/juce_android_Misc.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_android_Misc.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_android_NativeCode_dc186dee.o: ../../src/native/android/juce_android_NativeCode.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_android_NativeCode.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_android_Network_28d2276e.o: ../../src/native/android/juce_android_Network.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_android_Network.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_android_OpenGLComponent_8fd9ef4e.o: ../../src/native/android/juce_android_OpenGLComponent.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_android_OpenGLComponent.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_android_SystemStats_848ae670.o: ../../src/native/android/juce_android_SystemStats.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_android_SystemStats.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_android_Threads_10a24b69.o: ../../src/native/android/juce_android_Threads.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_android_Threads.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_android_WebBrowserComponent_178c6569.o: ../../src/native/android/juce_android_WebBrowserComponent.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_android_WebBrowserComponent.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_android_Windowing_2a620a72.o: ../../src/native/android/juce_android_Windowing.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_android_Windowing.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_CharacterFunctions_b1a5ac62.o: ../../src/text/juce_CharacterFunctions.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_CharacterFunctions.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_Identifier_e99ee619.o: ../../src/text/juce_Identifier.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_Identifier.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_JSON_bbf64af8.o: ../../src/text/juce_JSON.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_JSON.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_LocalisedStrings_3ddfa55e.o: ../../src/text/juce_LocalisedStrings.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_LocalisedStrings.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_String_80587b01.o: ../../src/text/juce_String.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_String.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_StringArray_4aaa67a2.o: ../../src/text/juce_StringArray.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_StringArray.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_StringPairArray_37130fe8.o: ../../src/text/juce_StringPairArray.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_StringPairArray.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_StringPool_9e8d033d.o: ../../src/text/juce_StringPool.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_StringPool.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_XmlDocument_6b9b0c2c.o: ../../src/text/juce_XmlDocument.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_XmlDocument.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_XmlElement_51daa55.o: ../../src/text/juce_XmlElement.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_XmlElement.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_ReadWriteLock_7acf3cc8.o: ../../src/threads/juce_ReadWriteLock.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_ReadWriteLock.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_Thread_69734d40.o: ../../src/threads/juce_Thread.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_Thread.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_ThreadPool_fd669dfc.o: ../../src/threads/juce_ThreadPool.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_ThreadPool.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_TimeSliceThread_e9db3803.o: ../../src/threads/juce_TimeSliceThread.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_TimeSliceThread.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_DeletedAtShutdown_b9105375.o: ../../src/utilities/juce_DeletedAtShutdown.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_DeletedAtShutdown.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_FileBasedDocument_d507d0a5.o: ../../src/utilities/juce_FileBasedDocument.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_FileBasedDocument.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_PropertiesFile_8faca026.o: ../../src/utilities/juce_PropertiesFile.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_PropertiesFile.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_RecentlyOpenedFilesList_f791257.o: ../../src/utilities/juce_RecentlyOpenedFilesList.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_RecentlyOpenedFilesList.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_UndoManager_33b197fc.o: ../../src/utilities/juce_UndoManager.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_UndoManager.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - -$(OBJDIR)/juce_UnitTest_4a02c10d.o: ../../src/utilities/juce_UnitTest.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling juce_UnitTest.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - --include $(OBJECTS:%.o=%.d) diff --git a/Builds/MacOSX/Juce.xcodeproj/project.pbxproj b/Builds/MacOSX/Juce.xcodeproj/project.pbxproj deleted file mode 100644 index 1a13dbaecb..0000000000 --- a/Builds/MacOSX/Juce.xcodeproj/project.pbxproj +++ /dev/null @@ -1,2442 +0,0 @@ -// !$*UTF8*$! -{ - archiveVersion = 1; - classes = { - }; - objectVersion = 45; - objects = { - - 0F4BA87762766B98D5B58AD0 = { isa = PBXBuildFile; fileRef = 144F56FCF3DF9EC922765901; }; - 50933337E6C3CC5B82540F8B = { isa = PBXBuildFile; fileRef = 36A407F2BE4A625184B5CCFD; }; - 04CB2DA89A71A183CEFEB7C0 = { isa = PBXBuildFile; fileRef = 21E1DBFAB3FB75875EA35280; }; - CD59C8E60146B04575CD61E6 = { isa = PBXBuildFile; fileRef = 415BD77DF4B2F4760D138735; }; - 76890501626BFFF310A94F15 = { isa = PBXBuildFile; fileRef = BA97FEDA576503A21D971F1E; }; - 46151070FA7D3426EC35280F = { isa = PBXBuildFile; fileRef = 1AA8BE2D76E153874FB08197; }; - 983FCD60625A60993546F850 = { isa = PBXBuildFile; fileRef = 0877D5750D6F21C5231687CA; }; - 416D6F00E88DC74879B4DF2B = { isa = PBXBuildFile; fileRef = 7D85530D76756C33795ECCE9; }; - 9C709BC2F4F0EE60BF52FACA = { isa = PBXBuildFile; fileRef = 93006D32B18174D9FE0A5E9E; }; - 992F46189ABF711A047186A4 = { isa = PBXBuildFile; fileRef = 9349E14552FEA0371553E808; }; - 5C312E6678456C8293633E0F = { isa = PBXBuildFile; fileRef = 2AD64F53E12B20011B7A0DB7; }; - FB21B7E6A7CE55D3C0E3C37E = { isa = PBXBuildFile; fileRef = 59597FA0A88A08937801D198; }; - C1147D03F1F4D697CC30DD22 = { isa = PBXBuildFile; fileRef = 27C3C51DF2519B519B76E2EE; }; - C5CFF5508299C26380465290 = { isa = PBXBuildFile; fileRef = CB32D4EE59D5CA9DB12F944D; }; - 0ACCAC5ABDE686B0CA42BFED = { isa = PBXBuildFile; fileRef = 203AC66FFB20EAD2E7A594BD; }; - 2171BD82DA3A6744260CDE58 = { isa = PBXBuildFile; fileRef = E00781B15E47C9CB9E94869D; }; - 3C22C15ACEEF0454171D231B = { isa = PBXBuildFile; fileRef = DA868174D4D2059AC1BE7E71; }; - 6D421F7B7EE3A149389653C2 = { isa = PBXBuildFile; fileRef = 7CF036906034FABB44D2108F; }; - 4ED0A649C320BA53718501CE = { isa = PBXBuildFile; fileRef = D5D2FD212300E7D49ED74823; }; - 5D3EC9BA6BA37694CB371ABB = { isa = PBXBuildFile; fileRef = 7AE5295A472723B26537FAEC; }; - 4CF5FB501CB800D4485B08DB = { isa = PBXBuildFile; fileRef = FBB2EEF0E5EC5EB6F89E9066; }; - 3747D91BE3C6A2E641BB133D = { isa = PBXBuildFile; fileRef = 74AD63909D3EE09D63256A76; }; - 4CFEE72495007A62F78C1B8E = { isa = PBXBuildFile; fileRef = 5D6E837F124C347B3C1CAE23; }; - BF7E18A49525915A0E1928C5 = { isa = PBXBuildFile; fileRef = 1511366CAD437989DAA30CF2; }; - 6DC6DEEE8A1A6092830A79C8 = { isa = PBXBuildFile; fileRef = D86718CE7E5DEF2071AC3D17; }; - 2862E190ECA33D2CE1458B51 = { isa = PBXBuildFile; fileRef = 9A8053936C35A19B9E98623A; }; - 0791EB173E6A9F959E692AA2 = { isa = PBXBuildFile; fileRef = E2A56C23BF2BB466BB273E3E; }; - 3B64EF7F57EAC5C51460059D = { isa = PBXBuildFile; fileRef = 5403C2A4DEE7B9B3B34235F8; }; - 16D537EB6D3BFAB3AAB54B11 = { isa = PBXBuildFile; fileRef = 3988438157D4B75177703F8A; }; - 0C22446F12486AD139A640CB = { isa = PBXBuildFile; fileRef = 6841D6AC927D02113F3AEBD4; }; - 95CF50482DC7139FCB40EB1C = { isa = PBXBuildFile; fileRef = C7DB1BB9AF7FE0A2AA38D767; }; - D66B0BC466522CD4C5F1335B = { isa = PBXBuildFile; fileRef = EAFD034BB1721BFBF9A3795E; }; - F20E960CAA933102A0F0225C = { isa = PBXBuildFile; fileRef = 5DB9D903D24646B0C2356A5D; }; - 9CDC242CC037F1D00BFD6157 = { isa = PBXBuildFile; fileRef = A1D687AE613A8B61EB63923D; }; - FB0C4D926F00644C6435F0B4 = { isa = PBXBuildFile; fileRef = E68EB4BC75216B5B56E3F937; }; - 3AA8CE85F8CEA9D4B8063E52 = { isa = PBXBuildFile; fileRef = B457515938E7141D5E79B671; }; - DDD4E27CA174F32412F71093 = { isa = PBXBuildFile; fileRef = 891E0B1AD09C0EA44297E0F2; }; - DC89A29962945F69CE38658B = { isa = PBXBuildFile; fileRef = 0731C60911E6985F51325484; }; - 78E7EF1759BA0AACCCE37533 = { isa = PBXBuildFile; fileRef = DF3833AF6E38E55218FDF23F; }; - 573BF08B2CACCC317F3D7603 = { isa = PBXBuildFile; fileRef = 0D3A77572C7256CE4C115FD7; }; - 8376B6E3DB141DDF5EFF6327 = { isa = PBXBuildFile; fileRef = 78D29BB5C76CCF7C21EC0DAF; }; - B579C891B16F4B219CD751B5 = { isa = PBXBuildFile; fileRef = 01712FF0A160032FA1DAA8C2; }; - 43FA6F0FD4DDEBA6427E730D = { isa = PBXBuildFile; fileRef = 50FAF92038EBD0127900AAA1; }; - BAB3164372A6C31A1A7DA58F = { isa = PBXBuildFile; fileRef = FCBB1DC14311D099809B21F7; }; - D71FEEEA440682B04E024BB7 = { isa = PBXBuildFile; fileRef = 2EBF36FAAF019B6F811D1C84; }; - B331EE2C23176373F2D52C1E = { isa = PBXBuildFile; fileRef = 1C8211DFB558D740EF4B173A; }; - 79D8E372BA77018BDA956D92 = { isa = PBXBuildFile; fileRef = DA4820727D6DDC75561A262C; }; - 3688819F98EFF0AABDD79029 = { isa = PBXBuildFile; fileRef = 3110B983ACE956D6A24F8C8C; }; - 84F9FCAE9DF003DC6FC3C941 = { isa = PBXBuildFile; fileRef = B6E20AE45813C0CA9B1014DD; }; - E1046147432EB115A68D6C43 = { isa = PBXBuildFile; fileRef = AF47BC3796A74CC15A192E8B; }; - 5CEE2D7E55DA99C1D310CDC2 = { isa = PBXBuildFile; fileRef = 9C5C0BCB2A298160025B15FC; }; - B154245927BCB4F87ABEAF17 = { isa = PBXBuildFile; fileRef = AB554593165FE8C8B40F4447; }; - 52ADF1419B058963EE32B7C3 = { isa = PBXBuildFile; fileRef = BC2A50B0B01128E394E9DE9C; }; - 31D36C32211754E793B9FF81 = { isa = PBXBuildFile; fileRef = D141C024A3F5A6748B0E9ED7; }; - 2D46CF2B0350A442E08EC355 = { isa = PBXBuildFile; fileRef = 08EBC2152F45FB2B839FCCC1; }; - D1407BB28C169F5E1CAC3CC7 = { isa = PBXBuildFile; fileRef = 096CF2243648F17E1BF5421B; }; - 07E6E11A658930554FF0C56A = { isa = PBXBuildFile; fileRef = ED5966B95F865C586A3CE08F; }; - E8DFABC1603D55B97429A8E4 = { isa = PBXBuildFile; fileRef = 35668D8EEA19957C6C9AC83A; }; - 1F905F44E5FA23A2D5CCDA0A = { isa = PBXBuildFile; fileRef = 4F22276689685D839BD252EA; }; - 4AB5E55BDF79028F82F83D8E = { isa = PBXBuildFile; fileRef = F77C9170829579FABA5679AD; }; - 9D2D1BA65C27BDA1F7C44769 = { isa = PBXBuildFile; fileRef = 70E5409425A76782B6188B31; }; - 43B3119E2F1B559263AE956C = { isa = PBXBuildFile; fileRef = 9BD379D2F7995BFE0B3E5369; }; - 4A7952C0A4EEE13296EEED5E = { isa = PBXBuildFile; fileRef = 1809284DD05B56309D7EA24F; }; - A230949FF8848D5E923F9083 = { isa = PBXBuildFile; fileRef = 5D27EE211D9BFF6A58C4DC42; }; - 11162E9812CFB0E738A7E2E6 = { isa = PBXBuildFile; fileRef = 4DF9D333038A442870668D31; }; - C682BEA7DB70FDC7C6BA2D6E = { isa = PBXBuildFile; fileRef = D66C00E06B06EAD3B5257DD6; }; - 6A53DA58B55E2DE7241BF2C8 = { isa = PBXBuildFile; fileRef = 4555F03DBD059EEDECEF9F85; }; - 0FF71870483AC46D5B7AC5B0 = { isa = PBXBuildFile; fileRef = DF6CAC67C0F2D379BDA03062; }; - FA01B3EABA192AE041D4FE4D = { isa = PBXBuildFile; fileRef = CFAECB6551F48A1695DEC243; }; - 43047D78351C2D7047F4F81E = { isa = PBXBuildFile; fileRef = 0AD73B8EA0D60D9927B36624; }; - 5BF44F954E56B7C2DD15EAEA = { isa = PBXBuildFile; fileRef = 18B170E96511BBA1019C66F8; }; - B14EB5F3829CA26DA906D5C0 = { isa = PBXBuildFile; fileRef = 8D2DE1F3CB15D003C90042E7; }; - D75943C2812EA68CA74D9FDA = { isa = PBXBuildFile; fileRef = CEF91E0C9CBB3EBFF9500FDA; }; - 6DEA630BFFF638BBBC8FDC00 = { isa = PBXBuildFile; fileRef = E3C548295935D26121D5D823; }; - 708060ED04ADF4E4FB8E2171 = { isa = PBXBuildFile; fileRef = EAFD8FAF365DFB32DC42D0E7; }; - 12E3CC31875A202D6B30F778 = { isa = PBXBuildFile; fileRef = E9E692847C14AD33CD5FB40B; }; - CF51988743ED2CD823DFE0B5 = { isa = PBXBuildFile; fileRef = 7AE9331938549244E27A5D0E; }; - 4AAFC135B170CF02A40F0D51 = { isa = PBXBuildFile; fileRef = 4CBD301A08E9C3762F861FC3; }; - 659D9CD58B6914EB420E6AEC = { isa = PBXBuildFile; fileRef = 31D985CB8646B78460E9D5A7; }; - 55737E2F1817DE642AA7DA05 = { isa = PBXBuildFile; fileRef = 1617348BBF5D103619D76911; }; - 6D2C50B0A69855A7F8C062E7 = { isa = PBXBuildFile; fileRef = B80F8CD026033ACCCE11A1A4; }; - 70EE7A1273945B62B013DB43 = { isa = PBXBuildFile; fileRef = AE68ECB6E063BD8D4984C0B3; }; - 9DF800566462E24A14246EAE = { isa = PBXBuildFile; fileRef = 843A7B398E9411F0AF28D65D; }; - 89F0DA39878F8A41E60B8C67 = { isa = PBXBuildFile; fileRef = 9CF077D3ED7B7B56F351AAF6; }; - 12E1174518BE1063E506CE5C = { isa = PBXBuildFile; fileRef = E594F70DC2F292FF1EF65CB6; }; - EC0B67A801316FBA35A04356 = { isa = PBXBuildFile; fileRef = E2D07ED5E1A4A460E0DEF59C; }; - 86EDB250B9F5C8FF3045ADEB = { isa = PBXBuildFile; fileRef = 1F2CFBF13ADCA05C0DC2D7D4; }; - 8F7CC7DDA1E07A392CAD82A3 = { isa = PBXBuildFile; fileRef = C818B558D6D5B62A80621281; }; - 621B7B0B518E63E69122C13E = { isa = PBXBuildFile; fileRef = D0D9267E200BD462361810F7; }; - 97982824572C18827047D92A = { isa = PBXBuildFile; fileRef = E13F33E386E1A0D5FC546521; }; - 927E7250FCE62E838599DF83 = { isa = PBXBuildFile; fileRef = 621B3A4B154182F69DDE2989; }; - 9AE6891C35CE161CB1707B4B = { isa = PBXBuildFile; fileRef = 2FFF9AFE4BD9437CE096E52B; }; - 06994A713C38F415C4E8A009 = { isa = PBXBuildFile; fileRef = 18EE6576A9ED098632CE5155; }; - 98F737B7459895BFCDC7965E = { isa = PBXBuildFile; fileRef = 8B1C747E63EEF036AD9AF3D8; }; - 7033A0968B1C81A821CCC296 = { isa = PBXBuildFile; fileRef = 1C3D15546065C1A9AA5AA0C6; }; - 14E5A383C70731C60911E698 = { isa = PBXBuildFile; fileRef = BA415BD77DF4B2F4760D1387; }; - 3A10CF09C41F8F55B7529E68 = { isa = PBXBuildFile; fileRef = 6930E651AEE97FD47E185EC9; }; - 5482BFF6CAD3B6CDFB09FBA1 = { isa = PBXBuildFile; fileRef = E927E4A58A84B21AA6B38A44; }; - FC3299637EACD8B5CBEC391F = { isa = PBXBuildFile; fileRef = 09AE2C7E2573204A7A35452B; }; - 5C245C1A77B96A1425323A1C = { isa = PBXBuildFile; fileRef = 9846D4523B3425BBB04107EE; }; - 05DFD3AF416CA6FDDDDC4C74 = { isa = PBXBuildFile; fileRef = F750738F398054AB38250780; }; - 78DEB64D3F38269C62EB1C7F = { isa = PBXBuildFile; fileRef = A3CB18F915377AC3FFA2E5F4; }; - DA5DA96B9D1A26342D9278B6 = { isa = PBXBuildFile; fileRef = 04F48B09426293224576DA9A; }; - CA49EF43B1478B146ADBBF62 = { isa = PBXBuildFile; fileRef = 346CC505FAFEE9451040108D; }; - FE6F6A4946B7E4F6C9F44C4A = { isa = PBXBuildFile; fileRef = ADC16C18C8237A7F8E35E37A; }; - 28254F1E6E686CF6F29AE56A = { isa = PBXBuildFile; fileRef = 0D3FA24FF38399E0EDA80860; }; - 9EA7FEF4CAD2BF46DD3596DA = { isa = PBXBuildFile; fileRef = 7330A9643F50DE8BEACDBB61; }; - D1400B3D9D07FA9E8BAA21CB = { isa = PBXBuildFile; fileRef = 1BC6C010045A06BDB4C684F6; }; - 716823F3B5437A20FCADA50E = { isa = PBXBuildFile; fileRef = 71B6CE03D6DB07BB293C8206; }; - 7CAB8DEBF6B93C845AEF11E5 = { isa = PBXBuildFile; fileRef = 3CE16163A43A6E67428385EE; }; - BBE24BE654237ACD381A97E4 = { isa = PBXBuildFile; fileRef = 6BB68B37C7B0BB4DA8326647; }; - 6F38AFBC749040844076FD4F = { isa = PBXBuildFile; fileRef = 76E073B2A3F59A3ACD20CC87; }; - B35BFCD19569A9F91A3CCCF5 = { isa = PBXBuildFile; fileRef = A4E66D702028A22D8157241C; }; - 7C7B33BC2E2F245C8AFC9879 = { isa = PBXBuildFile; fileRef = 53EB02EEDF5E7971EAB9E795; }; - 110285CA29B28DDC018D2BF0 = { isa = PBXBuildFile; fileRef = 37E48B8F8AD2BC448E5935C7; }; - ECF05C68A4DF71A10F8E8BA4 = { isa = PBXBuildFile; fileRef = D317D4B5BA40A5754EE56F47; }; - 50CE14D31986BA1BC81B0869 = { isa = PBXBuildFile; fileRef = BC209F6862D5923B8F9E3080; }; - E421EC41CB492F58BF1D9C4E = { isa = PBXBuildFile; fileRef = B60FE8BFA252E3EF2D60B77A; }; - E3CDB77EF18430879925E6A3 = { isa = PBXBuildFile; fileRef = D3B56583D4F60069296DB959; }; - 55E5B76FB1649B60DBE16B89 = { isa = PBXBuildFile; fileRef = B1DEB4E0BBFE7E2D052165BD; }; - 6D1A45ED50BAFAE4F4E403AC = { isa = PBXBuildFile; fileRef = 102BAE57AAA43A7685FCBD9A; }; - 70D519927F38B21BE572201A = { isa = PBXBuildFile; fileRef = 730CAA344708954DE271072C; }; - E4EFC5F8828526CE4518F1E6 = { isa = PBXBuildFile; fileRef = D54308F25AEE3110A166F2BE; }; - 835F7FDCAD027B4E96AB407C = { isa = PBXBuildFile; fileRef = 9A9D8C524A070162517620E5; }; - D027C0131892DA25CE716DDE = { isa = PBXBuildFile; fileRef = CA1B41922D8094982F967DBD; }; - A65EBA33900ED91BE522DBF7 = { isa = PBXBuildFile; fileRef = 29DFAA512171B967D687A945; }; - 0D91D36C2195315FE534F304 = { isa = PBXBuildFile; fileRef = A418FC3BDDBF1CE9F2903490; }; - A1E82F70796B8611D7323247 = { isa = PBXBuildFile; fileRef = 949854EDE6B5B16CEFB6108F; }; - BC1856E0B20406DDCE5EBF94 = { isa = PBXBuildFile; fileRef = 8A67B45A2BA1D19D1AC43315; }; - FF3A28F88174E10CB478931E = { isa = PBXBuildFile; fileRef = 912C419859C9C56BC96AA6FB; }; - C39AE37828718E9A45589A24 = { isa = PBXBuildFile; fileRef = 5ABC6616473BA4791AA8101E; }; - 4400B0595B35F919291C1A01 = { isa = PBXBuildFile; fileRef = 29A79478AE8567250972ED43; }; - BB1DAC0CA8D7B3DEEDEE76C6 = { isa = PBXBuildFile; fileRef = 7F5A271EAB78C7CF8B2341DE; }; - 56F347211337C9229BA06AA7 = { isa = PBXBuildFile; fileRef = A00C6593BFBFA76043BC0C06; }; - 75EAEC54BA3A8BD7F317C7E4 = { isa = PBXBuildFile; fileRef = F1A33029252D29A6ADF171B0; }; - 5FFFA4B8857D64FE36B4B125 = { isa = PBXBuildFile; fileRef = B1E8FF009812F29C2620E6BB; }; - 1D406F33F6B9FE7F92A71438 = { isa = PBXBuildFile; fileRef = 921B616E2229AEB6390D2B57; }; - 806FF2617B7CC21609927A11 = { isa = PBXBuildFile; fileRef = 07191E1A9805FA6E6F253FF6; }; - 9AA76460DA7D34CE6A69E2B1 = { isa = PBXBuildFile; fileRef = 45E5EE9E0173683D721FABDA; }; - 4E81BC4A50CF1883F529E152 = { isa = PBXBuildFile; fileRef = F8FCCCE06D31FEF697FCD80D; }; - 8FBB6BF0C5406E1BA481CFEF = { isa = PBXBuildFile; fileRef = A6AD7357F905309D1B461EB7; }; - F5F3F25D9F377128DC74D95B = { isa = PBXBuildFile; fileRef = FF046140CCF1EDB0DFF80178; }; - C64A2BF05224582134872415 = { isa = PBXBuildFile; fileRef = A95F42C5CB0C2E5052B31568; }; - 0A9C9486A6B31F21B1472D2B = { isa = PBXBuildFile; fileRef = A31221E2A50CCE9DF06B5F4B; }; - ED9F9A6CB4F8BB7FEA5384B7 = { isa = PBXBuildFile; fileRef = 3D8B0E86C98E2EE49AE868C8; }; - DE0BAD16BD5A6568EB4D228B = { isa = PBXBuildFile; fileRef = B116FEC4D544DB8E38CB571E; }; - AF6FEC311B9FDA112CEEBE03 = { isa = PBXBuildFile; fileRef = F1F65C9E7394E04E073A57A4; }; - 3795ECCE9D98F872F5BCAE64 = { isa = PBXBuildFile; fileRef = 993C90B10202DA78FA31CC58; }; - 723CFE5184B20B12ECABEB41 = { isa = PBXBuildFile; fileRef = 079CFB5DEF6F2B71E2910A22; }; - DB6098F004F6D7F19605002E = { isa = PBXBuildFile; fileRef = 143F36BCDE7A65EBA33900ED; }; - 757AC60B8BA481E592FFE6FF = { isa = PBXBuildFile; fileRef = F2C653BA4552E6838DFA4F87; }; - FC659F15D298558D9553B643 = { isa = PBXBuildFile; fileRef = D41423657626ACA672A9DED9; }; - C090ACD462D9431C8B64CAD1 = { isa = PBXBuildFile; fileRef = FD004BDDCEDB7E324983F70C; }; - D894FBF1CF62C5F126213616 = { isa = PBXBuildFile; fileRef = B92ACF027E63D1C788DEC893; }; - 3D80F7AE3D65EE0BB607F252 = { isa = PBXBuildFile; fileRef = 218D7D73C086866E587FFD01; }; - 2F33C392A0DD205A865955DE = { isa = PBXBuildFile; fileRef = 1DDE0A8E4C5857715D9B5FAE; }; - 36615B7CB2BE96B624C4ADC0 = { isa = PBXBuildFile; fileRef = 6AACD2FD239E39F87B666C6F; }; - 4F2AAD8318402F8C23A9EA54 = { isa = PBXBuildFile; fileRef = 9E4B3BAB9BDB06B60D28DF48; }; - E6971F06B78AE76C35E1A19C = { isa = PBXBuildFile; fileRef = 3D74B30C63465C32E26D8E33; }; - 6629D535AE1ABE35A0D53C69 = { isa = PBXBuildFile; fileRef = 944BC51C440C167C5B2A23E3; }; - DD4599D0A8117B025B477DE1 = { isa = PBXBuildFile; fileRef = 067D84F9291770240D1AB5B4; }; - E064E329741F36C329989203 = { isa = PBXBuildFile; fileRef = 441257DD380138C03568FCBD; }; - 61E659ADBF9D832ED8F24540 = { isa = PBXBuildFile; fileRef = 2886656DF7ACC9DDC888827F; }; - 9379C833B875207E5DFC5A3F = { isa = PBXBuildFile; fileRef = 82DFF1BD3665DC32672FCCE8; }; - F1A6C2E3226F87860BFC4EBC = { isa = PBXBuildFile; fileRef = D39C0B853C3EBBBD11E7C71E; }; - 144872E56AED1981C0973B24 = { isa = PBXBuildFile; fileRef = D31704DAB806B6AF3ED52DC7; }; - 95648DF5676EBEF57009D09A = { isa = PBXBuildFile; fileRef = 243EF1A31A779413BC2D5B98; }; - 2FE59D80851A0A392EF2F923 = { isa = PBXBuildFile; fileRef = 36BB6DDF702EC9B3DAC851FF; }; - 621D2E6CDA267030405166C2 = { isa = PBXBuildFile; fileRef = 9DA988F1D7CE29E0DFED7EF0; }; - 90347B7C32ACE8A11FC1B708 = { isa = PBXBuildFile; fileRef = 072D77C3834B1B3FB77F277B; }; - FAC87D81FE5168E37645A113 = { isa = PBXBuildFile; fileRef = 1C3FFBA02AE51EDD72A6250B; }; - E5BB4B5EBFE206E09D0E6E10 = { isa = PBXBuildFile; fileRef = C45E7E6B6E45DEFBF80940DD; }; - 1906C642BF6CA67821512855 = { isa = PBXBuildFile; fileRef = ECCBF2452804ECB2D5B4BC50; }; - 6F41A81F269BCBB912C6AFBC = { isa = PBXBuildFile; fileRef = E2C948680009D1744CEDBC25; }; - 7BB45CEB3B0913F98FC817F5 = { isa = PBXBuildFile; fileRef = 0984A4BA00D6AAFB463657F4; }; - F41D6061AD873C619D7436FB = { isa = PBXBuildFile; fileRef = 3451124EC2809C9BB591DF93; }; - 1FC0972EFBE39C7CDEB73A3D = { isa = PBXBuildFile; fileRef = 84311C1F5A8ACC8DF4D6FF34; }; - E63E64BFF5FDCEF5B53AE304 = { isa = PBXBuildFile; fileRef = DED871B1C7458B15DE7C9234; }; - E162F83B5F038092E2C70FC0 = { isa = PBXBuildFile; fileRef = 11F1658A055C45FE824FD2DB; }; - 710BF477DE534CF18BD68959 = { isa = PBXBuildFile; fileRef = 4C3C3AFC3D97C1378B7D7435; }; - E5DA150E966B948C4CB4EFDB = { isa = PBXBuildFile; fileRef = 0A20E7E561633610A76A34AB; }; - E96B477EB51FC152AC2EA6BD = { isa = PBXBuildFile; fileRef = 9C1D5CDA61FB51F657DA8B22; }; - CF36EF39EEAB7A4744C5D310 = { isa = PBXBuildFile; fileRef = 3C8C1AAF32DFECB89EB83271; }; - 372B6FF28C49018F5191C517 = { isa = PBXBuildFile; fileRef = 1317F0BE5EC80371F744967B; }; - D9AAB4AE220010CD526C87D2 = { isa = PBXBuildFile; fileRef = A34C0E63D41CFF5E55FD1D9E; }; - C732ADB05901619B14F1D6BB = { isa = PBXBuildFile; fileRef = CC04F253CB70B20B774801A9; }; - 075D5995E41FDD670ED35E17 = { isa = PBXBuildFile; fileRef = A5AAF4475138358F33D4904A; }; - BBE02E8719411C8A7D43A401 = { isa = PBXBuildFile; fileRef = 8AEF18EE9B12D4677F96B709; }; - 35E3B9684ED968BAC0BC8021 = { isa = PBXBuildFile; fileRef = 2FFDC7636EFC2D7F74590A31; }; - 736AC4A9DA6515B92644FA02 = { isa = PBXBuildFile; fileRef = 929FEA5458430B7AE23BBB46; }; - DFFBADCBC9C7E31B391BA560 = { isa = PBXBuildFile; fileRef = 090907E4FE95EE2B11C1A0E1; }; - A24A946371D566E02BCC95A5 = { isa = PBXBuildFile; fileRef = 2E4A5F7128313C23AD0356F7; }; - D390CCB01BD9BD132F04E0A6 = { isa = PBXBuildFile; fileRef = 87E57C8F3448D615271CD9F6; }; - 26E2FB6533B5700FA9780E00 = { isa = PBXBuildFile; fileRef = D7772BC5E4E455AE2916A87D; }; - AF5593DEC14D551C38CCB50D = { isa = PBXBuildFile; fileRef = 6C33842C52B61407CACCA858; }; - 0B830401EA0E883CCAAAC696 = { isa = PBXBuildFile; fileRef = A24990B395323FBAC0BEFB5A; }; - 3897B36CC1D89C5755CE1B90 = { isa = PBXBuildFile; fileRef = EF18D0073BE50E572ADD9A1C; }; - C55B00378E784DE4B428E934 = { isa = PBXBuildFile; fileRef = D36EFC4421056277BA87387E; }; - 82A9E0388C9BF3A698DCEF69 = { isa = PBXBuildFile; fileRef = 41AF663E626B8F6D319B9966; }; - 7F6749BFCF2F134468825D45 = { isa = PBXBuildFile; fileRef = 3EC800323255128D69539BAE; }; - 277CF246D5EE48868E38E625 = { isa = PBXBuildFile; fileRef = B7251E779500BA77F5522CC7; }; - 4D285D9D3F5955F2FD574D04 = { isa = PBXBuildFile; fileRef = EF50EEDCAB08F842AB8DE6DA; }; - 30F9B53BD00228406F6477DF = { isa = PBXBuildFile; fileRef = 2E03ADF975A126C1F2F7B667; }; - 759633D5CDB35874FD37DD7F = { isa = PBXBuildFile; fileRef = ED3ED8389001D55FBDCF1087; }; - E0F309D93E9A7F0CC71C4503 = { isa = PBXBuildFile; fileRef = 835CC2A1E67E7B19E41F8FBD; }; - F246AADF8E531BC2244A1D38 = { isa = PBXBuildFile; fileRef = FF052647D2EFA985D05C8E83; }; - F78940DAEB8BE98A9AA4B0BE = { isa = PBXBuildFile; fileRef = 504730C9B9F60192C2577979; }; - 00FE118356919D0BA97AE853 = { isa = PBXBuildFile; fileRef = 85B7BCACB40E02815844F71D; }; - 18D8A96CCD34E41A5E162AD5 = { isa = PBXBuildFile; fileRef = A54BC72C899A2AF82E1E37F8; }; - CEB8A9B9A37EBBA79A6478D4 = { isa = PBXBuildFile; fileRef = 582DCC2F948F1DEA0D450B0D; }; - D6D48B2CC53FAE2BD126B0DE = { isa = PBXBuildFile; fileRef = E0694CD7C814AA99E5A84799; }; - C384A89F786FDE8426F657D5 = { isa = PBXBuildFile; fileRef = 62967D33232C5A86D88084B4; }; - 3D324F656EEF8F1FB2B437AC = { isa = PBXBuildFile; fileRef = C17613C202D8E1C366F21D3C; }; - 645AF66C048A4815F5A8ECDD = { isa = PBXBuildFile; fileRef = 2BFC199D03DEEC329D6A7CB1; }; - 38EFE824E76B3BB99824C265 = { isa = PBXBuildFile; fileRef = 32EA297812F1C88B42099501; }; - E23C5C51305DC7CE30E4DAB7 = { isa = PBXBuildFile; fileRef = CB649686575473223C859482; }; - 60E1742796432D042C59B9B3 = { isa = PBXBuildFile; fileRef = BA17B023595ECD8166A231D1; }; - B92F53BABB6A9AC8348B001E = { isa = PBXBuildFile; fileRef = 78068AA59A5DCFCCAAEA79D0; }; - EBC3AA015D24C62FA0307F51 = { isa = PBXBuildFile; fileRef = 61D06B694603F608CDA0703B; }; - 803FFCA3DAC0C004A80143B4 = { isa = PBXBuildFile; fileRef = 91CB423DBC5F3CBEDD9CF2EF; }; - F0556B3AD9D388177E26B90D = { isa = PBXBuildFile; fileRef = AF66A9951377E2D04C54CADD; }; - 0558FFF11AED944C6B3E5FB5 = { isa = PBXBuildFile; fileRef = 2ED8CC539A9D9BE611F67A9A; }; - CF73FAC91E319C464F07C966 = { isa = PBXBuildFile; fileRef = 29BC53FEE9BC27F44534C909; }; - B6D3EDA0F2E3516F3922F23F = { isa = PBXBuildFile; fileRef = 312F208B501E0D7764C6B613; }; - E7C9FAA5F8A4AEDAD8A8CC1D = { isa = PBXBuildFile; fileRef = 9D3F1BAB1D48DDECB9F35916; }; - 084C9F2D4F78134CB1EFE676 = { isa = PBXBuildFile; fileRef = 1B170F70AF8AA0A39074F671; }; - 4DAD08CD3A688747C9CA237B = { isa = PBXBuildFile; fileRef = 0F1C5770B363EF7DF64A876A; }; - 60FE8BFA252E3EF2D60B77AD = { isa = PBXBuildFile; fileRef = 6619D27E74F623B1E8CE8F71; }; - C592CC923C5495467EF05D48 = { isa = PBXBuildFile; fileRef = EAF0F2EAB230F7539B91A7FB; }; - E12096E92D3D43DD7926E063 = { isa = PBXBuildFile; fileRef = 7904C2A3C52959748C46D54F; }; - F4567E6C9ABFB13FF24797DE = { isa = PBXBuildFile; fileRef = 94D3EBE6E0D9AFE555226A88; }; - 0B0996F97D926609C23E5F90 = { isa = PBXBuildFile; fileRef = 67F4F9E1F6B9B4D1C1A668E5; }; - FB5900FB9E071EDC2542B846 = { isa = PBXBuildFile; fileRef = 6E4DF7338364956EF42C4493; }; - EDE605169F0AF038FE5097B3 = { isa = PBXBuildFile; fileRef = 3FD3FA96955DD648494E76A4; }; - D78C3DA6505CE8CC3F17C070 = { isa = PBXBuildFile; fileRef = 692A95B19D9C32094A1E07B9; }; - B23EE989379EB2F075D6F587 = { isa = PBXBuildFile; fileRef = 058702E8697667AEA38254C1; }; - ED7C62DE10250FCC07CF17B2 = { isa = PBXBuildFile; fileRef = 6FFB38088C11BAE68368A3E7; }; - 1535D49C24E8A9FA5F6DCF6E = { isa = PBXBuildFile; fileRef = 59B2FFF817679AEA84375E1B; }; - BBCA4C01CEF1EDA75625D6DC = { isa = PBXBuildFile; fileRef = D9B3C04F8EB4228DD59002E7; }; - 136FB9588C834E6F4A1EEBFB = { isa = PBXBuildFile; fileRef = 17C3AF03FF7AE88AE0C73311; }; - 274415D1C0AE9BF56FAAE791 = { isa = PBXBuildFile; fileRef = 4035C867821E9B5887AA25FB; }; - CBAD975785BD26A0DA9417B6 = { isa = PBXBuildFile; fileRef = EFA58F646B69B227AEF14140; }; - 2A8F78D412AC7EC0C2998A1A = { isa = PBXBuildFile; fileRef = 06B06C420341B005DFF951D2; }; - 2DD969525DEF4AD408E9BB59 = { isa = PBXBuildFile; fileRef = AD7A1C2C82EE714EBDD52EFC; }; - 059B694C912BE81023D5240D = { isa = PBXBuildFile; fileRef = D4211E697F43821CDBCE4F24; }; - 4387EB80C5795FACBE753A7F = { isa = PBXBuildFile; fileRef = BE5DCD603F7E21A1F66CDF33; }; - B2C41D39730EB3AC75D55949 = { isa = PBXBuildFile; fileRef = AE363A1FE2F403F7CE2FDF7F; }; - F045E8F977C00016F6EBB1B7 = { isa = PBXBuildFile; fileRef = A10A63E2098A85B5CA9265B1; }; - B89FE5AB44DDEBCC050F8D7A = { isa = PBXBuildFile; fileRef = 3F60563DEC7941B88163A50E; }; - 2EA320797BD7D2137F133681 = { isa = PBXBuildFile; fileRef = 39C0783ED515AAA82F9CA37F; }; - 1008A8A446B9BCADBB853056 = { isa = PBXBuildFile; fileRef = B3F5E7A708350F72E7C77153; }; - 0FB1AED6E5AB5CEA95E70950 = { isa = PBXBuildFile; fileRef = BBE79494A818EF83F52A4C7B; }; - 103A3B11DFE35E9088ECE933 = { isa = PBXBuildFile; fileRef = AE5A7EC70F288E7EA682081D; }; - DAC7AB8D9EA70D99A1C1287E = { isa = PBXBuildFile; fileRef = 7A039686F4F852E26936CA53; }; - B3D08D9E24CC369E4838E6FF = { isa = PBXBuildFile; fileRef = 868E43A4BB7015579789E4F8; }; - 15932C8039A59B0431FBB93E = { isa = PBXBuildFile; fileRef = D99C977ACCD09262F06F6624; }; - 3BBC410C79D2F53D32ED7466 = { isa = PBXBuildFile; fileRef = AD655AA04981173716022D8D; }; - 88A4D0443DFD6BA1A1B32AB9 = { isa = PBXBuildFile; fileRef = 21B2342B75097AB93CFF7E97; }; - 06F1BEB9AB97F33305B8F816 = { isa = PBXBuildFile; fileRef = 7A51D8B81F390A4CABF25C73; }; - 6CB4FA2797FBEA5C4C342EED = { isa = PBXBuildFile; fileRef = 76DB94CC776536F5D05B9445; }; - 150C16E65ADC7E3359C88510 = { isa = PBXBuildFile; fileRef = AA698DD5A82F91CF84A29666; }; - 9C547F4DC4FC50F9C3382ACE = { isa = PBXBuildFile; fileRef = FABA493FEE07E6373DD8EB41; }; - 5D1B2A14239B0351261D832E = { isa = PBXBuildFile; fileRef = 595EBA8A689DA899986314D8; }; - 0AFD6B2B694302A62C7C9DD1 = { isa = PBXBuildFile; fileRef = EACFC12E665283EB7926E9EC; }; - 3CE21931FC5A59ED7C23144B = { isa = PBXBuildFile; fileRef = BAE5CE629DF9D286293E616F; }; - DB7E8E984F9BEF4C84B887B1 = { isa = PBXBuildFile; fileRef = D4C499CB25F043FE667BC5E1; }; - 07645D91AFD4F8512ECD48ED = { isa = PBXBuildFile; fileRef = 4366712140FBEBEDBCBDCE9B; }; - D132232A4A404A7C08D10928 = { isa = PBXBuildFile; fileRef = E0A2C24581917DD090186333; }; - 83B488D64AB9828CFFBC55A9 = { isa = PBXBuildFile; fileRef = 3F3D429025A92B6F0FB6F8EF; }; - 8305C5E01476E99FBB1A0315 = { isa = PBXBuildFile; fileRef = 275F2210628D9E9968B1B258; }; - FF613B604C2333F4A4ACEDDA = { isa = PBXBuildFile; fileRef = 5DEA687D261C59CBABB782E9; }; - CECE3D66B19693E41850C30D = { isa = PBXBuildFile; fileRef = 5593DEC14D551C38CCB50D70; }; - DF419EBD05F13A0D2073D47A = { isa = PBXBuildFile; fileRef = B8E47498C7C6D5ECF41F0EAB; }; - C9FB7884928BF0D6140AF881 = { isa = PBXBuildFile; fileRef = 9DC2C10B16A645EEB82220D8; }; - 5C9628DB3E0C0BA8809AE45D = { isa = PBXBuildFile; fileRef = EE5F18DF1DED7617C4A41FF3; }; - 724DA2BCA5ABC5772604C3B4 = { isa = PBXBuildFile; fileRef = B2BCE9DDC8F0F54CA3D913E7; }; - 035B1F7B1505ABF24455690E = { isa = PBXBuildFile; fileRef = 5249EFBE3B22E6FC1A7B6D42; }; - 3C71EA297D7418FEBB52F9DD = { isa = PBXBuildFile; fileRef = A257B76FCE9D594EAD41414C; }; - 7A86E411B55E15DA7AF1FE67 = { isa = PBXBuildFile; fileRef = 8280AA34B23B4D366711A9E7; }; - BD86381924AE45021246ABA3 = { isa = PBXBuildFile; fileRef = C9561A66310DAD5EEB4A9462; }; - 306AB64E97A05B800349E7E2 = { isa = PBXBuildFile; fileRef = B62991F8AEE7327BA8A5070F; }; - E7A5418175B23C794421441C = { isa = PBXBuildFile; fileRef = 013F753639A6350C8DC602AD; }; - 51F5844EAE455D51BDB17228 = { isa = PBXBuildFile; fileRef = 72524FE185FF48DC1F954341; }; - C99F35ABEC13F58C27C1D303 = { isa = PBXBuildFile; fileRef = BF5307F364AC9250D8625168; }; - 3D9B5EDBECAA680B0A067F5C = { isa = PBXBuildFile; fileRef = AA4823F2F2A78C43D7A039D0; }; - 724B03672FC7862B671969BC = { isa = PBXBuildFile; fileRef = 87A5A064CC3CD55BA5D7617D; }; - 8B31099030792C554BD51211 = { isa = PBXBuildFile; fileRef = 641638A0466CEC1BDEAFB476; }; - D04EEEC7EAE7C806E95ED41C = { isa = PBXBuildFile; fileRef = 7DB37383434F45D8A7B674C3; }; - 7EA440527972D6B7322EC307 = { isa = PBXBuildFile; fileRef = CB16B2438EDCC10C499645E6; }; - CB9FE1DA1AFE5FBA9FF06061 = { isa = PBXBuildFile; fileRef = BEB35C6173793C1CB7AB6311; }; - 26454A5DB5BAFD7901F17DA7 = { isa = PBXBuildFile; fileRef = BA58B49B820A47F6F55CDACB; }; - F41B46F970BA78762DCE67D1 = { isa = PBXBuildFile; fileRef = 930E58E13FC92BF70AC20EEF; }; - B7A8CF6F889840BED05C8C27 = { isa = PBXBuildFile; fileRef = 9113CDD122D2790E147A8CF5; }; - 3EBF23F390FC0227260CF7CB = { isa = PBXBuildFile; fileRef = EE56999A85AF18015C540183; }; - 1906FDEEDAE61C88A59BC271 = { isa = PBXBuildFile; fileRef = 189F69E0B926C73B654D6951; }; - F51142C2CF336FC4A4FAACC6 = { isa = PBXBuildFile; fileRef = AE9A7A0775FA806126A74E16; }; - 1021132FAC7870AC18C040DE = { isa = PBXBuildFile; fileRef = 4F5D1AA83981FBCD33CE234F; }; - 05C8FA821C64B69BFF8FAF2C = { isa = PBXBuildFile; fileRef = E6A7BFB0FCD17A9B133CDFA4; }; - 5E330E219B2D2944BCE95174 = { isa = PBXBuildFile; fileRef = FE6E3F911679B0D7547577A3; }; - 275FBC09BE58E708A73B88C1 = { isa = PBXBuildFile; fileRef = 8BCE60CBC91DBAAB089958A1; }; - 6DA99BA218FB45568258841C = { isa = PBXBuildFile; fileRef = 3F11593DC3A168A52FCC2DD9; }; - 32F1C95EDEE7722797B8CEE8 = { isa = PBXBuildFile; fileRef = FC2C82760E717788B5A6E691; }; - 029A0E8B44DC17211722677D = { isa = PBXBuildFile; fileRef = 42059626955C547DA6AD3196; }; - 4B4E17467BC41E2166549998 = { isa = PBXBuildFile; fileRef = 8F383A785B4876198C5B0194; }; - 9686F29C29D1C26E353DE68A = { isa = PBXBuildFile; fileRef = F3B50EE3939E9F16D13C3C7C; }; - 79B4C2F1C0CF592ACE8093C0 = { isa = PBXBuildFile; fileRef = 3A37CD82212075940421CE4F; }; - 88A87D28B3809665F28DC16E = { isa = PBXBuildFile; fileRef = 7F3EF672D07ECE3E13AAF267; }; - 6BDBEFD97E643E5BB27637FF = { isa = PBXBuildFile; fileRef = 249959E338D7750E56A9F2F8; }; - BC3C22F5350ED7433D303A04 = { isa = PBXBuildFile; fileRef = 58B70C726D186B4E770300BC; }; - 0B41EC4D7839F8CBCB8F9A0D = { isa = PBXBuildFile; fileRef = DCD09B6EF4A4A109DE01F152; }; - B420CD4B589C08EAFA6E3DA4 = { isa = PBXBuildFile; fileRef = 7527A5E8F4F39581159D3E5B; }; - D4A05D7CA67B6F0527C9BD81 = { isa = PBXBuildFile; fileRef = 1DBF9DAAD0690CB2CA4E9960; }; - 0D7547577A31512EDCEDC42C = { isa = PBXBuildFile; fileRef = BA561E64C6400CFB1DE013F6; }; - E2FDC7D3E3DC4C1423FA0C5B = { isa = PBXBuildFile; fileRef = 061B492EABD6B1C995D581A8; }; - A46B0025A68136ED993E0D85 = { isa = PBXBuildFile; fileRef = 50159A5B7A552A6C1EB557F3; }; - B99678E919BF547A3A3F5D6E = { isa = PBXBuildFile; fileRef = CDA5FCC51F6C1E84D7DC3274; }; - 5B714CDD0082419BFED7D2D4 = { isa = PBXBuildFile; fileRef = B14735381ADB00741166E330; }; - 2DD498313DA488A5063C4C1B = { isa = PBXBuildFile; fileRef = 09AE0882D58BE1715219556A; }; - 5B33FFE120A47EF42CBC05E4 = { isa = PBXBuildFile; fileRef = 0EB41C0AB478EE02D8C851F9; }; - 552D45FB250C62F86CD02A57 = { isa = PBXBuildFile; fileRef = FBE07C5CC622A5D36BDAB9E1; }; - 0E8E9829E95E32163F45482D = { isa = PBXBuildFile; fileRef = B07C853EB60D8D8691BC1B4B; }; - 6801797B247CB3A6890C0AB0 = { isa = PBXBuildFile; fileRef = 5D32C8856093B33438AEB758; }; - B0B82AB2D9B0950F67B11BEA = { isa = PBXBuildFile; fileRef = 8758E6857070D7E5406FDE3F; }; - 379B4A89E5403B57A2009E76 = { isa = PBXBuildFile; fileRef = 8E8BE2F1C182E418BBA6903C; }; - 6ED121D4FEE575408B9612AB = { isa = PBXBuildFile; fileRef = 03B9D3D9042E85BDD691325E; }; - 9ADE436BC62FB84E297C1CA0 = { isa = PBXBuildFile; fileRef = 13C661B79E1E9508512A6B21; }; - 03D534E5B18011C3E03CDD40 = { isa = PBXBuildFile; fileRef = F2F68E50F42BD0F124E89E2C; }; - 06E2ED69E9FAC199D559F276 = { isa = PBXBuildFile; fileRef = 59C46E289F86C80D4341EAA3; }; - 9801CCC32F01818B39CFD88E = { isa = PBXBuildFile; fileRef = FA82460758BDCB2DCCE1EAAA; }; - FE553DDF4F83DABF13DF4A2B = { isa = PBXBuildFile; fileRef = CE06EEED7426AA45C27B629C; }; - 68DB48B0EC9E5E37C6B5281C = { isa = PBXBuildFile; fileRef = 1D74C9567283836ECC70E48B; }; - 96E9017FBE104E9EADC586B1 = { isa = PBXBuildFile; fileRef = 40216CE846A54CE706131A23; }; - BA6C6EF4C88D49C640DA7BF6 = { isa = PBXBuildFile; fileRef = E646726910F110DC34DD1662; }; - 0B124D9CE361014F815A5958 = { isa = PBXBuildFile; fileRef = 9AF9F1C0D766D4F894E4A7B0; }; - C701E3FCB168A3B4A31C4242 = { isa = PBXBuildFile; fileRef = A404CD721E2A0F0CAE9326C5; }; - 04F6D85CCF26A7F6DE589876 = { isa = PBXBuildFile; fileRef = 32B7C3609BDA01AA09740139; }; - 62912A2DA2F01212517938E7 = { isa = PBXBuildFile; fileRef = CEF7210E311274F1DFAB6882; }; - 36D770FCDAC86084A495B96E = { isa = PBXBuildFile; fileRef = 755C440534C0EB494572B3F3; }; - DA2A4714F1A6957A4F2B8D48 = { isa = PBXBuildFile; fileRef = EE855319AF344A05C92580C7; }; - CE9A64287FCEF00DD2BA6AEE = { isa = PBXBuildFile; fileRef = FCD02A40985242A8A6648311; }; - 2AC6F3BFAAA21E21076A9F8D = { isa = PBXBuildFile; fileRef = 76E2084D2148068F9138A816; }; - B8DD4DB0BD1A6B38BBF92413 = { isa = PBXBuildFile; fileRef = 8273A206FB309671284959DD; }; - 1C0B1362E81C8B073BF0DCEC = { isa = PBXBuildFile; fileRef = 644FD6155385BC3AA270FB5D; }; - 63BEC07A51CB8E516B38ECD4 = { isa = PBXBuildFile; fileRef = 4A97C8D2FF6454DDD3AF4BE5; }; - C8F81E843F446868FAD88197 = { isa = PBXBuildFile; fileRef = B507B4A8712A54D7A8C03223; }; - 50D91A2EC0ABF894E612D936 = { isa = PBXBuildFile; fileRef = 23252E4C97AEFAE0C5EEAA77; }; - 82568CF438EF4C950E4A42DF = { isa = PBXBuildFile; fileRef = 81B36E7C56DF1A777AA04F71; }; - B2E9D0C534DDE9F96921A054 = { isa = PBXBuildFile; fileRef = 0EC7DE81A516F4130AC59557; }; - C8D06AE9C68A675A87DC9C99 = { isa = PBXBuildFile; fileRef = 5715BC14D93D61D71206FCB2; }; - FE2999972FE3D6E251DA6653 = { isa = PBXBuildFile; fileRef = 95F21C2733BD5932372E4157; }; - 8B2193898D3465B5995EE98A = { isa = PBXBuildFile; fileRef = 8E78623B2D21CFE68DEC0483; }; - 4FB3EE200AEA14C7218D7034 = { isa = PBXBuildFile; fileRef = 4D60F7F748CF6702D1E45960; }; - 81E79D9217773BF0E39F7812 = { isa = PBXBuildFile; fileRef = EF06213027EA3F7C54EE0F18; }; - 2A360CDF2B5A46B282CEA2C4 = { isa = PBXBuildFile; fileRef = 60F21CB42270ACE2241544A8; }; - 01FD07AB480226E84D52F591 = { isa = PBXBuildFile; fileRef = B4435D42216365FA97651272; }; - D8B9941A1375579D6CE7C1C4 = { isa = PBXBuildFile; fileRef = 599F5C47BB9B5898E0E88CF3; }; - 0DE731ED3EC994B9227C2741 = { isa = PBXBuildFile; fileRef = 4BE2727CCD2CD7603402C8FE; }; - A124FE5709D9324B5BAFFE53 = { isa = PBXBuildFile; fileRef = A618FC3255ECE14EC9259E6B; }; - A84A5CA4654AE87192A6A096 = { isa = PBXBuildFile; fileRef = A59A5DCFCCAAEA79D03C2B27; }; - 55EDB4D9B702B469DB4655C3 = { isa = PBXBuildFile; fileRef = ADE5F12AA5AD969E2C7002B3; }; - 389351359BA78C682E1931A6 = { isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libjucedebug.a; sourceTree = "BUILT_PRODUCTS_DIR"; }; - 144F56FCF3DF9EC922765901 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Application.cpp"; path = "../../src/application/juce_Application.cpp"; sourceTree = "SOURCE_ROOT"; }; - F6A490BA93AC3558E9A6FBB0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Application.h"; path = "../../src/application/juce_Application.h"; sourceTree = "SOURCE_ROOT"; }; - CB9766F7A9C612B326D808CB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ApplicationCommandID.h"; path = "../../src/application/juce_ApplicationCommandID.h"; sourceTree = "SOURCE_ROOT"; }; - 36A407F2BE4A625184B5CCFD = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ApplicationCommandInfo.cpp"; path = "../../src/application/juce_ApplicationCommandInfo.cpp"; sourceTree = "SOURCE_ROOT"; }; - 4E74130693EE120D905818AC = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ApplicationCommandInfo.h"; path = "../../src/application/juce_ApplicationCommandInfo.h"; sourceTree = "SOURCE_ROOT"; }; - 21E1DBFAB3FB75875EA35280 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ApplicationCommandManager.cpp"; path = "../../src/application/juce_ApplicationCommandManager.cpp"; sourceTree = "SOURCE_ROOT"; }; - EDF52AB382E80530E8FED9A0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ApplicationCommandManager.h"; path = "../../src/application/juce_ApplicationCommandManager.h"; sourceTree = "SOURCE_ROOT"; }; - 415BD77DF4B2F4760D138735 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ApplicationCommandTarget.cpp"; path = "../../src/application/juce_ApplicationCommandTarget.cpp"; sourceTree = "SOURCE_ROOT"; }; - 8422E662212FA2082644A942 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ApplicationCommandTarget.h"; path = "../../src/application/juce_ApplicationCommandTarget.h"; sourceTree = "SOURCE_ROOT"; }; - BA97FEDA576503A21D971F1E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ApplicationProperties.cpp"; path = "../../src/application/juce_ApplicationProperties.cpp"; sourceTree = "SOURCE_ROOT"; }; - E03C84620DCB004172C09B28 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ApplicationProperties.h"; path = "../../src/application/juce_ApplicationProperties.h"; sourceTree = "SOURCE_ROOT"; }; - 1AA8BE2D76E153874FB08197 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AiffAudioFormat.cpp"; path = "../../src/audio/audio_file_formats/juce_AiffAudioFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; - 05C5C546E12C6422D865D864 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AiffAudioFormat.h"; path = "../../src/audio/audio_file_formats/juce_AiffAudioFormat.h"; sourceTree = "SOURCE_ROOT"; }; - 1F5A667524FB005D872340E1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioCDBurner.h"; path = "../../src/audio/audio_file_formats/juce_AudioCDBurner.h"; sourceTree = "SOURCE_ROOT"; }; - 0877D5750D6F21C5231687CA = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioCDReader.cpp"; path = "../../src/audio/audio_file_formats/juce_AudioCDReader.cpp"; sourceTree = "SOURCE_ROOT"; }; - 1BBE03BB0D71FEEEA440682B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioCDReader.h"; path = "../../src/audio/audio_file_formats/juce_AudioCDReader.h"; sourceTree = "SOURCE_ROOT"; }; - 7D85530D76756C33795ECCE9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioFormat.cpp"; path = "../../src/audio/audio_file_formats/juce_AudioFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; - 013E8938EE1C6B4F63016B55 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioFormat.h"; path = "../../src/audio/audio_file_formats/juce_AudioFormat.h"; sourceTree = "SOURCE_ROOT"; }; - 93006D32B18174D9FE0A5E9E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioFormatManager.cpp"; path = "../../src/audio/audio_file_formats/juce_AudioFormatManager.cpp"; sourceTree = "SOURCE_ROOT"; }; - 41070806F82EC9C6D1C67689 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioFormatManager.h"; path = "../../src/audio/audio_file_formats/juce_AudioFormatManager.h"; sourceTree = "SOURCE_ROOT"; }; - 9349E14552FEA0371553E808 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioFormatReader.cpp"; path = "../../src/audio/audio_file_formats/juce_AudioFormatReader.cpp"; sourceTree = "SOURCE_ROOT"; }; - 27356F5E93CEA4D472D83D8E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioFormatReader.h"; path = "../../src/audio/audio_file_formats/juce_AudioFormatReader.h"; sourceTree = "SOURCE_ROOT"; }; - 2AD64F53E12B20011B7A0DB7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioFormatWriter.cpp"; path = "../../src/audio/audio_file_formats/juce_AudioFormatWriter.cpp"; sourceTree = "SOURCE_ROOT"; }; - 8BD38C2507C0F8E28930A4F8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioFormatWriter.h"; path = "../../src/audio/audio_file_formats/juce_AudioFormatWriter.h"; sourceTree = "SOURCE_ROOT"; }; - 59597FA0A88A08937801D198 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioSubsectionReader.cpp"; path = "../../src/audio/audio_file_formats/juce_AudioSubsectionReader.cpp"; sourceTree = "SOURCE_ROOT"; }; - AE7F7F0D959C2E3CF5989C88 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioSubsectionReader.h"; path = "../../src/audio/audio_file_formats/juce_AudioSubsectionReader.h"; sourceTree = "SOURCE_ROOT"; }; - 27C3C51DF2519B519B76E2EE = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioThumbnail.cpp"; path = "../../src/audio/audio_file_formats/juce_AudioThumbnail.cpp"; sourceTree = "SOURCE_ROOT"; }; - 7B34E897026857C84399A09C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioThumbnail.h"; path = "../../src/audio/audio_file_formats/juce_AudioThumbnail.h"; sourceTree = "SOURCE_ROOT"; }; - CB32D4EE59D5CA9DB12F944D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioThumbnailCache.cpp"; path = "../../src/audio/audio_file_formats/juce_AudioThumbnailCache.cpp"; sourceTree = "SOURCE_ROOT"; }; - 3442FA257104DC3F43E7F870 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioThumbnailCache.h"; path = "../../src/audio/audio_file_formats/juce_AudioThumbnailCache.h"; sourceTree = "SOURCE_ROOT"; }; - 203AC66FFB20EAD2E7A594BD = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_CoreAudioFormat.cpp"; path = "../../src/audio/audio_file_formats/juce_CoreAudioFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; - C9F1015CA457A61082398E34 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CoreAudioFormat.h"; path = "../../src/audio/audio_file_formats/juce_CoreAudioFormat.h"; sourceTree = "SOURCE_ROOT"; }; - E00781B15E47C9CB9E94869D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FlacAudioFormat.cpp"; path = "../../src/audio/audio_file_formats/juce_FlacAudioFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; - 7C06BD13BF7E0097EB0A8D08 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FlacAudioFormat.h"; path = "../../src/audio/audio_file_formats/juce_FlacAudioFormat.h"; sourceTree = "SOURCE_ROOT"; }; - DA868174D4D2059AC1BE7E71 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OggVorbisAudioFormat.cpp"; path = "../../src/audio/audio_file_formats/juce_OggVorbisAudioFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; - 25B1AC1A6767AAD9E9515A18 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OggVorbisAudioFormat.h"; path = "../../src/audio/audio_file_formats/juce_OggVorbisAudioFormat.h"; sourceTree = "SOURCE_ROOT"; }; - 7CF036906034FABB44D2108F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_QuickTimeAudioFormat.cpp"; path = "../../src/audio/audio_file_formats/juce_QuickTimeAudioFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; - DB5CAB7BC2973ABFF0867BCB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_QuickTimeAudioFormat.h"; path = "../../src/audio/audio_file_formats/juce_QuickTimeAudioFormat.h"; sourceTree = "SOURCE_ROOT"; }; - D5D2FD212300E7D49ED74823 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_WavAudioFormat.cpp"; path = "../../src/audio/audio_file_formats/juce_WavAudioFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; - 87A18C425F53C2098B1D42FE = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_WavAudioFormat.h"; path = "../../src/audio/audio_file_formats/juce_WavAudioFormat.h"; sourceTree = "SOURCE_ROOT"; }; - 7AE5295A472723B26537FAEC = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioFormatReaderSource.cpp"; path = "../../src/audio/audio_sources/juce_AudioFormatReaderSource.cpp"; sourceTree = "SOURCE_ROOT"; }; - 51287E236C749092458BA2DD = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioFormatReaderSource.h"; path = "../../src/audio/audio_sources/juce_AudioFormatReaderSource.h"; sourceTree = "SOURCE_ROOT"; }; - 4C3258A1978AF3D357D196C6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioSource.h"; path = "../../src/audio/audio_sources/juce_AudioSource.h"; sourceTree = "SOURCE_ROOT"; }; - FBB2EEF0E5EC5EB6F89E9066 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioSourcePlayer.cpp"; path = "../../src/audio/audio_sources/juce_AudioSourcePlayer.cpp"; sourceTree = "SOURCE_ROOT"; }; - AE9C08108699C71A289462B7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioSourcePlayer.h"; path = "../../src/audio/audio_sources/juce_AudioSourcePlayer.h"; sourceTree = "SOURCE_ROOT"; }; - 74AD63909D3EE09D63256A76 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioTransportSource.cpp"; path = "../../src/audio/audio_sources/juce_AudioTransportSource.cpp"; sourceTree = "SOURCE_ROOT"; }; - 67A8F408B1EC63407C9241B2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioTransportSource.h"; path = "../../src/audio/audio_sources/juce_AudioTransportSource.h"; sourceTree = "SOURCE_ROOT"; }; - 5D6E837F124C347B3C1CAE23 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_BufferingAudioSource.cpp"; path = "../../src/audio/audio_sources/juce_BufferingAudioSource.cpp"; sourceTree = "SOURCE_ROOT"; }; - E1EA83B7EF928DC88D069AEC = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BufferingAudioSource.h"; path = "../../src/audio/audio_sources/juce_BufferingAudioSource.h"; sourceTree = "SOURCE_ROOT"; }; - 1511366CAD437989DAA30CF2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ChannelRemappingAudioSource.cpp"; path = "../../src/audio/audio_sources/juce_ChannelRemappingAudioSource.cpp"; sourceTree = "SOURCE_ROOT"; }; - EA630BFFF638BBBC8FDC0018 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ChannelRemappingAudioSource.h"; path = "../../src/audio/audio_sources/juce_ChannelRemappingAudioSource.h"; sourceTree = "SOURCE_ROOT"; }; - D86718CE7E5DEF2071AC3D17 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_IIRFilterAudioSource.cpp"; path = "../../src/audio/audio_sources/juce_IIRFilterAudioSource.cpp"; sourceTree = "SOURCE_ROOT"; }; - 76BB7F75A7F9930ED5A0CDB6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_IIRFilterAudioSource.h"; path = "../../src/audio/audio_sources/juce_IIRFilterAudioSource.h"; sourceTree = "SOURCE_ROOT"; }; - 9A8053936C35A19B9E98623A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MixerAudioSource.cpp"; path = "../../src/audio/audio_sources/juce_MixerAudioSource.cpp"; sourceTree = "SOURCE_ROOT"; }; - 9CB1126A9FBFF1D6D6469AF9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MixerAudioSource.h"; path = "../../src/audio/audio_sources/juce_MixerAudioSource.h"; sourceTree = "SOURCE_ROOT"; }; - C63D6EC0555C13C1B79A6AAD = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PositionableAudioSource.h"; path = "../../src/audio/audio_sources/juce_PositionableAudioSource.h"; sourceTree = "SOURCE_ROOT"; }; - E2A56C23BF2BB466BB273E3E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ResamplingAudioSource.cpp"; path = "../../src/audio/audio_sources/juce_ResamplingAudioSource.cpp"; sourceTree = "SOURCE_ROOT"; }; - BE5DB55285441D501FED3C00 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ResamplingAudioSource.h"; path = "../../src/audio/audio_sources/juce_ResamplingAudioSource.h"; sourceTree = "SOURCE_ROOT"; }; - 5403C2A4DEE7B9B3B34235F8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ReverbAudioSource.cpp"; path = "../../src/audio/audio_sources/juce_ReverbAudioSource.cpp"; sourceTree = "SOURCE_ROOT"; }; - 0F70C4D118AC7625B4C42CD4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ReverbAudioSource.h"; path = "../../src/audio/audio_sources/juce_ReverbAudioSource.h"; sourceTree = "SOURCE_ROOT"; }; - 3988438157D4B75177703F8A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ToneGeneratorAudioSource.cpp"; path = "../../src/audio/audio_sources/juce_ToneGeneratorAudioSource.cpp"; sourceTree = "SOURCE_ROOT"; }; - 6AC857F51FD805D7BD3EF712 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ToneGeneratorAudioSource.h"; path = "../../src/audio/audio_sources/juce_ToneGeneratorAudioSource.h"; sourceTree = "SOURCE_ROOT"; }; - 6841D6AC927D02113F3AEBD4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioDeviceManager.cpp"; path = "../../src/audio/devices/juce_AudioDeviceManager.cpp"; sourceTree = "SOURCE_ROOT"; }; - E668D9C7FF084E59405A2A9E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioDeviceManager.h"; path = "../../src/audio/devices/juce_AudioDeviceManager.h"; sourceTree = "SOURCE_ROOT"; }; - C7DB1BB9AF7FE0A2AA38D767 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioIODevice.cpp"; path = "../../src/audio/devices/juce_AudioIODevice.cpp"; sourceTree = "SOURCE_ROOT"; }; - 95CA8EE24AFBB1F2F29A5394 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioIODevice.h"; path = "../../src/audio/devices/juce_AudioIODevice.h"; sourceTree = "SOURCE_ROOT"; }; - EAFD034BB1721BFBF9A3795E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioIODeviceType.cpp"; path = "../../src/audio/devices/juce_AudioIODeviceType.cpp"; sourceTree = "SOURCE_ROOT"; }; - EFAFC937377A21E9AC0F9776 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioIODeviceType.h"; path = "../../src/audio/devices/juce_AudioIODeviceType.h"; sourceTree = "SOURCE_ROOT"; }; - 5DB9D903D24646B0C2356A5D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioDataConverters.cpp"; path = "../../src/audio/dsp/juce_AudioDataConverters.cpp"; sourceTree = "SOURCE_ROOT"; }; - EBA6B46F7B3C11CA3744A4D0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioDataConverters.h"; path = "../../src/audio/dsp/juce_AudioDataConverters.h"; sourceTree = "SOURCE_ROOT"; }; - A1D687AE613A8B61EB63923D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioSampleBuffer.cpp"; path = "../../src/audio/dsp/juce_AudioSampleBuffer.cpp"; sourceTree = "SOURCE_ROOT"; }; - 812620B53BE820D26A63B65D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioSampleBuffer.h"; path = "../../src/audio/dsp/juce_AudioSampleBuffer.h"; sourceTree = "SOURCE_ROOT"; }; - 11C1A96A35A2F03F8C34BD43 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Decibels.h"; path = "../../src/audio/dsp/juce_Decibels.h"; sourceTree = "SOURCE_ROOT"; }; - E68EB4BC75216B5B56E3F937 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_IIRFilter.cpp"; path = "../../src/audio/dsp/juce_IIRFilter.cpp"; sourceTree = "SOURCE_ROOT"; }; - EE2259D9768027C2C001EEAD = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_IIRFilter.h"; path = "../../src/audio/dsp/juce_IIRFilter.h"; sourceTree = "SOURCE_ROOT"; }; - 2C55CE1674244DB199C3033F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Reverb.h"; path = "../../src/audio/dsp/juce_Reverb.h"; sourceTree = "SOURCE_ROOT"; }; - B457515938E7141D5E79B671 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MidiBuffer.cpp"; path = "../../src/audio/midi/juce_MidiBuffer.cpp"; sourceTree = "SOURCE_ROOT"; }; - 0604C2E17F0E0DFEFDA19F8D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiBuffer.h"; path = "../../src/audio/midi/juce_MidiBuffer.h"; sourceTree = "SOURCE_ROOT"; }; - 891E0B1AD09C0EA44297E0F2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MidiFile.cpp"; path = "../../src/audio/midi/juce_MidiFile.cpp"; sourceTree = "SOURCE_ROOT"; }; - EBACA038DBB50817BE80E8C5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiFile.h"; path = "../../src/audio/midi/juce_MidiFile.h"; sourceTree = "SOURCE_ROOT"; }; - C376B06C58C5D3C972583BBB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiInput.h"; path = "../../src/audio/midi/juce_MidiInput.h"; sourceTree = "SOURCE_ROOT"; }; - 0731C60911E6985F51325484 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MidiKeyboardState.cpp"; path = "../../src/audio/midi/juce_MidiKeyboardState.cpp"; sourceTree = "SOURCE_ROOT"; }; - 062F7ACF5282C5B2D4BF5EE1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiKeyboardState.h"; path = "../../src/audio/midi/juce_MidiKeyboardState.h"; sourceTree = "SOURCE_ROOT"; }; - DF3833AF6E38E55218FDF23F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MidiMessage.cpp"; path = "../../src/audio/midi/juce_MidiMessage.cpp"; sourceTree = "SOURCE_ROOT"; }; - C627F9E9EC160055D65D81CB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiMessage.h"; path = "../../src/audio/midi/juce_MidiMessage.h"; sourceTree = "SOURCE_ROOT"; }; - 0D3A77572C7256CE4C115FD7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MidiMessageCollector.cpp"; path = "../../src/audio/midi/juce_MidiMessageCollector.cpp"; sourceTree = "SOURCE_ROOT"; }; - A22A0F77C15B1E4A8F2EB42A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiMessageCollector.h"; path = "../../src/audio/midi/juce_MidiMessageCollector.h"; sourceTree = "SOURCE_ROOT"; }; - 78D29BB5C76CCF7C21EC0DAF = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MidiMessageSequence.cpp"; path = "../../src/audio/midi/juce_MidiMessageSequence.cpp"; sourceTree = "SOURCE_ROOT"; }; - DD3886D45B5988B4DAC2D049 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiMessageSequence.h"; path = "../../src/audio/midi/juce_MidiMessageSequence.h"; sourceTree = "SOURCE_ROOT"; }; - 01712FF0A160032FA1DAA8C2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MidiOutput.cpp"; path = "../../src/audio/midi/juce_MidiOutput.cpp"; sourceTree = "SOURCE_ROOT"; }; - 899BD7E18BE1EF7CDF53784C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiOutput.h"; path = "../../src/audio/midi/juce_MidiOutput.h"; sourceTree = "SOURCE_ROOT"; }; - 7B88F6B8E3A10CEAD9B0EE88 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_AU_Wrapper.mm"; path = "../../src/audio/plugin_client/AU/juce_AU_Wrapper.mm"; sourceTree = "SOURCE_ROOT"; }; - 1101E8CB676FDEEF0A89D921 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RTAS_DigiCode_Header.h"; path = "../../src/audio/plugin_client/RTAS/juce_RTAS_DigiCode_Header.h"; sourceTree = "SOURCE_ROOT"; }; - F222E5825D83E711C9F1B789 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RTAS_DigiCode1.cpp"; path = "../../src/audio/plugin_client/RTAS/juce_RTAS_DigiCode1.cpp"; sourceTree = "SOURCE_ROOT"; }; - CEAA2B84462EF0B5026EAB0A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RTAS_DigiCode2.cpp"; path = "../../src/audio/plugin_client/RTAS/juce_RTAS_DigiCode2.cpp"; sourceTree = "SOURCE_ROOT"; }; - 9A3151864FB90A6A4BCCAE9B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RTAS_DigiCode3.cpp"; path = "../../src/audio/plugin_client/RTAS/juce_RTAS_DigiCode3.cpp"; sourceTree = "SOURCE_ROOT"; }; - BCE37F0D994C0ADF2CCFF796 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_RTAS_MacUtilities.mm"; path = "../../src/audio/plugin_client/RTAS/juce_RTAS_MacUtilities.mm"; sourceTree = "SOURCE_ROOT"; }; - F52ECCD6C02108A2D7F672F5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RTAS_WinUtilities.cpp"; path = "../../src/audio/plugin_client/RTAS/juce_RTAS_WinUtilities.cpp"; sourceTree = "SOURCE_ROOT"; }; - 833C3F205F05BA4ADC883E53 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RTAS_Wrapper.cpp"; path = "../../src/audio/plugin_client/RTAS/juce_RTAS_Wrapper.cpp"; sourceTree = "SOURCE_ROOT"; }; - 69C4FF0DD888BA25477561C8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_VST_Wrapper.cpp"; path = "../../src/audio/plugin_client/VST/juce_VST_Wrapper.cpp"; sourceTree = "SOURCE_ROOT"; }; - 37E1FC756833849B8C7C1215 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_VST_Wrapper.mm"; path = "../../src/audio/plugin_client/VST/juce_VST_Wrapper.mm"; sourceTree = "SOURCE_ROOT"; }; - 2741189DF800566462E24A14 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_StandaloneFilterWindow.cpp"; path = "../../src/audio/plugin_client/Standalone/juce_StandaloneFilterWindow.cpp"; sourceTree = "SOURCE_ROOT"; }; - FAC43251D74E5140740BEF60 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_StandaloneFilterWindow.h"; path = "../../src/audio/plugin_client/Standalone/juce_StandaloneFilterWindow.h"; sourceTree = "SOURCE_ROOT"; }; - 2E96F55074F4EB74171EE6B6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_IncludeCharacteristics.h"; path = "../../src/audio/plugin_client/juce_IncludeCharacteristics.h"; sourceTree = "SOURCE_ROOT"; }; - 13F64389F0E25731A98E92CD = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PluginHeaders.h"; path = "../../src/audio/plugin_client/juce_PluginHeaders.h"; sourceTree = "SOURCE_ROOT"; }; - 7CDC2FA849B7ED73A2638A11 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PluginHostType.h"; path = "../../src/audio/plugin_client/juce_PluginHostType.h"; sourceTree = "SOURCE_ROOT"; }; - D76BDCCF9E1A1F26A8F578F0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioUnitPluginFormat.h"; path = "../../src/audio/plugin_host/formats/juce_AudioUnitPluginFormat.h"; sourceTree = "SOURCE_ROOT"; }; - 50FAF92038EBD0127900AAA1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_AudioUnitPluginFormat.mm"; path = "../../src/audio/plugin_host/formats/juce_AudioUnitPluginFormat.mm"; sourceTree = "SOURCE_ROOT"; }; - 2073E1A497363200233CD34E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DirectXPluginFormat.h"; path = "../../src/audio/plugin_host/formats/juce_DirectXPluginFormat.h"; sourceTree = "SOURCE_ROOT"; }; - F800E47459B2FE9DEF56F312 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LADSPAPluginFormat.h"; path = "../../src/audio/plugin_host/formats/juce_LADSPAPluginFormat.h"; sourceTree = "SOURCE_ROOT"; }; - B4291F2CEEC78CFEDEFC360E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_VSTMidiEventList.h"; path = "../../src/audio/plugin_host/formats/juce_VSTMidiEventList.h"; sourceTree = "SOURCE_ROOT"; }; - FCBB1DC14311D099809B21F7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_VSTPluginFormat.cpp"; path = "../../src/audio/plugin_host/formats/juce_VSTPluginFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; - 723EBD80931754F4DD77DD53 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_VSTPluginFormat.h"; path = "../../src/audio/plugin_host/formats/juce_VSTPluginFormat.h"; sourceTree = "SOURCE_ROOT"; }; - 2EBF36FAAF019B6F811D1C84 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_VSTPluginFormat.mm"; path = "../../src/audio/plugin_host/formats/juce_VSTPluginFormat.mm"; sourceTree = "SOURCE_ROOT"; }; - 1C8211DFB558D740EF4B173A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioPluginFormat.cpp"; path = "../../src/audio/plugin_host/juce_AudioPluginFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; - 28534632DF76A1EA837BD0D7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioPluginFormat.h"; path = "../../src/audio/plugin_host/juce_AudioPluginFormat.h"; sourceTree = "SOURCE_ROOT"; }; - DA4820727D6DDC75561A262C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioPluginFormatManager.cpp"; path = "../../src/audio/plugin_host/juce_AudioPluginFormatManager.cpp"; sourceTree = "SOURCE_ROOT"; }; - A6415104D1E3E5CE7031C0C1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioPluginFormatManager.h"; path = "../../src/audio/plugin_host/juce_AudioPluginFormatManager.h"; sourceTree = "SOURCE_ROOT"; }; - E5BA7B8913271E935A1DA487 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioPluginInstance.h"; path = "../../src/audio/plugin_host/juce_AudioPluginInstance.h"; sourceTree = "SOURCE_ROOT"; }; - 3110B983ACE956D6A24F8C8C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_KnownPluginList.cpp"; path = "../../src/audio/plugin_host/juce_KnownPluginList.cpp"; sourceTree = "SOURCE_ROOT"; }; - A3FE51C7DD706F536273AB0E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_KnownPluginList.h"; path = "../../src/audio/plugin_host/juce_KnownPluginList.h"; sourceTree = "SOURCE_ROOT"; }; - B6E20AE45813C0CA9B1014DD = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PluginDescription.cpp"; path = "../../src/audio/plugin_host/juce_PluginDescription.cpp"; sourceTree = "SOURCE_ROOT"; }; - 4AE3A448D79602BE793BB5AA = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PluginDescription.h"; path = "../../src/audio/plugin_host/juce_PluginDescription.h"; sourceTree = "SOURCE_ROOT"; }; - AF47BC3796A74CC15A192E8B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PluginDirectoryScanner.cpp"; path = "../../src/audio/plugin_host/juce_PluginDirectoryScanner.cpp"; sourceTree = "SOURCE_ROOT"; }; - 3D170AC8FD8E403C54E08F9D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PluginDirectoryScanner.h"; path = "../../src/audio/plugin_host/juce_PluginDirectoryScanner.h"; sourceTree = "SOURCE_ROOT"; }; - 9C5C0BCB2A298160025B15FC = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PluginListComponent.cpp"; path = "../../src/audio/plugin_host/juce_PluginListComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - 08C65C3EB60FE8BFA252E3EF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PluginListComponent.h"; path = "../../src/audio/plugin_host/juce_PluginListComponent.h"; sourceTree = "SOURCE_ROOT"; }; - 4CF107951746567DB63880A3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioPlayHead.h"; path = "../../src/audio/processors/juce_AudioPlayHead.h"; sourceTree = "SOURCE_ROOT"; }; - AB554593165FE8C8B40F4447 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioProcessor.cpp"; path = "../../src/audio/processors/juce_AudioProcessor.cpp"; sourceTree = "SOURCE_ROOT"; }; - 3F260C24341E58745AC5BE79 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioProcessor.h"; path = "../../src/audio/processors/juce_AudioProcessor.h"; sourceTree = "SOURCE_ROOT"; }; - BC2A50B0B01128E394E9DE9C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioProcessorEditor.cpp"; path = "../../src/audio/processors/juce_AudioProcessorEditor.cpp"; sourceTree = "SOURCE_ROOT"; }; - EC0F8FAA7EACE0D275064D60 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioProcessorEditor.h"; path = "../../src/audio/processors/juce_AudioProcessorEditor.h"; sourceTree = "SOURCE_ROOT"; }; - D141C024A3F5A6748B0E9ED7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioProcessorGraph.cpp"; path = "../../src/audio/processors/juce_AudioProcessorGraph.cpp"; sourceTree = "SOURCE_ROOT"; }; - 19C9509EC7DD00DA7443DEFC = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioProcessorGraph.h"; path = "../../src/audio/processors/juce_AudioProcessorGraph.h"; sourceTree = "SOURCE_ROOT"; }; - ABDE16ABC1784B0FD3887A8F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioProcessorListener.h"; path = "../../src/audio/processors/juce_AudioProcessorListener.h"; sourceTree = "SOURCE_ROOT"; }; - 08EBC2152F45FB2B839FCCC1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioProcessorPlayer.cpp"; path = "../../src/audio/processors/juce_AudioProcessorPlayer.cpp"; sourceTree = "SOURCE_ROOT"; }; - 350428D4D70AAB88B2B84790 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioProcessorPlayer.h"; path = "../../src/audio/processors/juce_AudioProcessorPlayer.h"; sourceTree = "SOURCE_ROOT"; }; - 096CF2243648F17E1BF5421B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GenericAudioProcessorEditor.cpp"; path = "../../src/audio/processors/juce_GenericAudioProcessorEditor.cpp"; sourceTree = "SOURCE_ROOT"; }; - CAD3312170E5DBE8AA8348BA = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_GenericAudioProcessorEditor.h"; path = "../../src/audio/processors/juce_GenericAudioProcessorEditor.h"; sourceTree = "SOURCE_ROOT"; }; - ED5966B95F865C586A3CE08F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Sampler.cpp"; path = "../../src/audio/synthesisers/juce_Sampler.cpp"; sourceTree = "SOURCE_ROOT"; }; - 6C6C1C360138D9BD4B27588B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Sampler.h"; path = "../../src/audio/synthesisers/juce_Sampler.h"; sourceTree = "SOURCE_ROOT"; }; - 35668D8EEA19957C6C9AC83A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Synthesiser.cpp"; path = "../../src/audio/synthesisers/juce_Synthesiser.cpp"; sourceTree = "SOURCE_ROOT"; }; - 9E6C206F95245BCDE38FB2B5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Synthesiser.h"; path = "../../src/audio/synthesisers/juce_Synthesiser.h"; sourceTree = "SOURCE_ROOT"; }; - 4F22276689685D839BD252EA = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AbstractFifo.cpp"; path = "../../src/containers/juce_AbstractFifo.cpp"; sourceTree = "SOURCE_ROOT"; }; - 9584B84F23A4251755D49213 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AbstractFifo.h"; path = "../../src/containers/juce_AbstractFifo.h"; sourceTree = "SOURCE_ROOT"; }; - 839BE8047CF2F8EBE43ED34F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Array.h"; path = "../../src/containers/juce_Array.h"; sourceTree = "SOURCE_ROOT"; }; - EDF52FDF87ACD33FE933142C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ArrayAllocationBase.h"; path = "../../src/containers/juce_ArrayAllocationBase.h"; sourceTree = "SOURCE_ROOT"; }; - F77C9170829579FABA5679AD = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DynamicObject.cpp"; path = "../../src/containers/juce_DynamicObject.cpp"; sourceTree = "SOURCE_ROOT"; }; - 34C402EF9ADCAD34FB657D43 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DynamicObject.h"; path = "../../src/containers/juce_DynamicObject.h"; sourceTree = "SOURCE_ROOT"; }; - 7DA9AC75A4D9227C8FC4B2F7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ElementComparator.h"; path = "../../src/containers/juce_ElementComparator.h"; sourceTree = "SOURCE_ROOT"; }; - 2767E1D082874D301D5D5F43 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_HashMap.h"; path = "../../src/containers/juce_HashMap.h"; sourceTree = "SOURCE_ROOT"; }; - 9289A1E6B141F24C57FF0927 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LinkedListPointer.h"; path = "../../src/containers/juce_LinkedListPointer.h"; sourceTree = "SOURCE_ROOT"; }; - 70E5409425A76782B6188B31 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_NamedValueSet.cpp"; path = "../../src/containers/juce_NamedValueSet.cpp"; sourceTree = "SOURCE_ROOT"; }; - BB4A73064B0FC74ECCA19116 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_NamedValueSet.h"; path = "../../src/containers/juce_NamedValueSet.h"; sourceTree = "SOURCE_ROOT"; }; - C1913C90ED7BE51E823887CD = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OwnedArray.h"; path = "../../src/containers/juce_OwnedArray.h"; sourceTree = "SOURCE_ROOT"; }; - 9BD379D2F7995BFE0B3E5369 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PropertySet.cpp"; path = "../../src/containers/juce_PropertySet.cpp"; sourceTree = "SOURCE_ROOT"; }; - C8F0F54CA3D913E7B8D559CF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PropertySet.h"; path = "../../src/containers/juce_PropertySet.h"; sourceTree = "SOURCE_ROOT"; }; - D7612CE51ED4F9D3F960F922 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ReferenceCountedArray.h"; path = "../../src/containers/juce_ReferenceCountedArray.h"; sourceTree = "SOURCE_ROOT"; }; - F95BC2FA7861CFF968D661ED = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ScopedValueSetter.h"; path = "../../src/containers/juce_ScopedValueSetter.h"; sourceTree = "SOURCE_ROOT"; }; - 2F5FD1DEFAE549553A8BE3B1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SortedSet.h"; path = "../../src/containers/juce_SortedSet.h"; sourceTree = "SOURCE_ROOT"; }; - 989E03031D341649B4A296F5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SparseSet.h"; path = "../../src/containers/juce_SparseSet.h"; sourceTree = "SOURCE_ROOT"; }; - 1809284DD05B56309D7EA24F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Value.cpp"; path = "../../src/containers/juce_Value.cpp"; sourceTree = "SOURCE_ROOT"; }; - 69F58BF234EDF6328F624E0A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Value.h"; path = "../../src/containers/juce_Value.h"; sourceTree = "SOURCE_ROOT"; }; - 5D27EE211D9BFF6A58C4DC42 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ValueTree.cpp"; path = "../../src/containers/juce_ValueTree.cpp"; sourceTree = "SOURCE_ROOT"; }; - 7CABDD863B47D8ADC900A4D8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ValueTree.h"; path = "../../src/containers/juce_ValueTree.h"; sourceTree = "SOURCE_ROOT"; }; - 4DF9D333038A442870668D31 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Variant.cpp"; path = "../../src/containers/juce_Variant.cpp"; sourceTree = "SOURCE_ROOT"; }; - A81B4FC81A75E21E5B96E506 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Variant.h"; path = "../../src/containers/juce_Variant.h"; sourceTree = "SOURCE_ROOT"; }; - D66C00E06B06EAD3B5257DD6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileLogger.cpp"; path = "../../src/core/juce_FileLogger.cpp"; sourceTree = "SOURCE_ROOT"; }; - C8441B7B3E4CCD4A257B4BFE = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileLogger.h"; path = "../../src/core/juce_FileLogger.h"; sourceTree = "SOURCE_ROOT"; }; - 92ACFFCCCD1C85A0F8C6F80F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Initialisation.h"; path = "../../src/core/juce_Initialisation.h"; sourceTree = "SOURCE_ROOT"; }; - 4555F03DBD059EEDECEF9F85 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Logger.cpp"; path = "../../src/core/juce_Logger.cpp"; sourceTree = "SOURCE_ROOT"; }; - 63F44EC0485FCA050814967E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Logger.h"; path = "../../src/core/juce_Logger.h"; sourceTree = "SOURCE_ROOT"; }; - DF6CAC67C0F2D379BDA03062 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PerformanceCounter.cpp"; path = "../../src/core/juce_PerformanceCounter.cpp"; sourceTree = "SOURCE_ROOT"; }; - 1159C6BB0D33EE8E1A96B083 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PerformanceCounter.h"; path = "../../src/core/juce_PerformanceCounter.h"; sourceTree = "SOURCE_ROOT"; }; - 8292AE37F99FCC1E5BF63A28 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PlatformDefs.h"; path = "../../src/core/juce_PlatformDefs.h"; sourceTree = "SOURCE_ROOT"; }; - CFAECB6551F48A1695DEC243 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RelativeTime.cpp"; path = "../../src/core/juce_RelativeTime.cpp"; sourceTree = "SOURCE_ROOT"; }; - B4137E4612C1D161894D0D27 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RelativeTime.h"; path = "../../src/core/juce_RelativeTime.h"; sourceTree = "SOURCE_ROOT"; }; - 0AD73B8EA0D60D9927B36624 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Result.cpp"; path = "../../src/core/juce_Result.cpp"; sourceTree = "SOURCE_ROOT"; }; - F51969AF328D2C7D52D7436D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Result.h"; path = "../../src/core/juce_Result.h"; sourceTree = "SOURCE_ROOT"; }; - C25D6136DF9CE441D6EB4C42 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Singleton.h"; path = "../../src/core/juce_Singleton.h"; sourceTree = "SOURCE_ROOT"; }; - CA66415F6EAA172B83755954 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_StandardHeader.h"; path = "../../src/core/juce_StandardHeader.h"; sourceTree = "SOURCE_ROOT"; }; - 18B170E96511BBA1019C66F8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_SystemStats.cpp"; path = "../../src/core/juce_SystemStats.cpp"; sourceTree = "SOURCE_ROOT"; }; - 45D14EF360BDA1F5692E583D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SystemStats.h"; path = "../../src/core/juce_SystemStats.h"; sourceTree = "SOURCE_ROOT"; }; - 956A1C30D5FE98DBB154204D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TargetPlatform.h"; path = "../../src/core/juce_TargetPlatform.h"; sourceTree = "SOURCE_ROOT"; }; - 8D2DE1F3CB15D003C90042E7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Time.cpp"; path = "../../src/core/juce_Time.cpp"; sourceTree = "SOURCE_ROOT"; }; - 872020C1EC3997ED744BF1BD = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Time.h"; path = "../../src/core/juce_Time.h"; sourceTree = "SOURCE_ROOT"; }; - CEF91E0C9CBB3EBFF9500FDA = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Uuid.cpp"; path = "../../src/core/juce_Uuid.cpp"; sourceTree = "SOURCE_ROOT"; }; - 297B664E9AB86DFE7DCAFF22 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Uuid.h"; path = "../../src/core/juce_Uuid.h"; sourceTree = "SOURCE_ROOT"; }; - E3C548295935D26121D5D823 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_BlowFish.cpp"; path = "../../src/cryptography/juce_BlowFish.cpp"; sourceTree = "SOURCE_ROOT"; }; - 7A4B0E6FD686BCF0B8CC771E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BlowFish.h"; path = "../../src/cryptography/juce_BlowFish.h"; sourceTree = "SOURCE_ROOT"; }; - EAFD8FAF365DFB32DC42D0E7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MD5.cpp"; path = "../../src/cryptography/juce_MD5.cpp"; sourceTree = "SOURCE_ROOT"; }; - 6E4345FEEB1DC732A16134A4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MD5.h"; path = "../../src/cryptography/juce_MD5.h"; sourceTree = "SOURCE_ROOT"; }; - E9E692847C14AD33CD5FB40B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Primes.cpp"; path = "../../src/cryptography/juce_Primes.cpp"; sourceTree = "SOURCE_ROOT"; }; - 22612DBDC6C689B605CC6B48 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Primes.h"; path = "../../src/cryptography/juce_Primes.h"; sourceTree = "SOURCE_ROOT"; }; - 7AE9331938549244E27A5D0E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RSAKey.cpp"; path = "../../src/cryptography/juce_RSAKey.cpp"; sourceTree = "SOURCE_ROOT"; }; - 16335266AFB4D19F25410E1D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RSAKey.h"; path = "../../src/cryptography/juce_RSAKey.h"; sourceTree = "SOURCE_ROOT"; }; - 4CBD301A08E9C3762F861FC3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_SHA256.cpp"; path = "../../src/cryptography/juce_SHA256.cpp"; sourceTree = "SOURCE_ROOT"; }; - 02CD7BA1750DE36237369F78 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SHA256.h"; path = "../../src/cryptography/juce_SHA256.h"; sourceTree = "SOURCE_ROOT"; }; - 31D985CB8646B78460E9D5A7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ActionBroadcaster.cpp"; path = "../../src/events/juce_ActionBroadcaster.cpp"; sourceTree = "SOURCE_ROOT"; }; - 09F7685D1EFF472ECB1F5EF1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ActionBroadcaster.h"; path = "../../src/events/juce_ActionBroadcaster.h"; sourceTree = "SOURCE_ROOT"; }; - 4EF8BD4BF46C4BCB39F96609 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ActionListener.h"; path = "../../src/events/juce_ActionListener.h"; sourceTree = "SOURCE_ROOT"; }; - 5EB7BD94A754E88D076D777A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AppleRemote.h"; path = "../../src/events/juce_AppleRemote.h"; sourceTree = "SOURCE_ROOT"; }; - 1617348BBF5D103619D76911 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AsyncUpdater.cpp"; path = "../../src/events/juce_AsyncUpdater.cpp"; sourceTree = "SOURCE_ROOT"; }; - 44DB44953945417F76199479 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AsyncUpdater.h"; path = "../../src/events/juce_AsyncUpdater.h"; sourceTree = "SOURCE_ROOT"; }; - D04B6E43A037F985434B2F5A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CallbackMessage.h"; path = "../../src/events/juce_CallbackMessage.h"; sourceTree = "SOURCE_ROOT"; }; - B80F8CD026033ACCCE11A1A4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ChangeBroadcaster.cpp"; path = "../../src/events/juce_ChangeBroadcaster.cpp"; sourceTree = "SOURCE_ROOT"; }; - 5F454A6B5A82ECE2396C5716 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ChangeBroadcaster.h"; path = "../../src/events/juce_ChangeBroadcaster.h"; sourceTree = "SOURCE_ROOT"; }; - B2D08C8EEE3E22026533D2EA = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ChangeListener.h"; path = "../../src/events/juce_ChangeListener.h"; sourceTree = "SOURCE_ROOT"; }; - AE68ECB6E063BD8D4984C0B3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_InterprocessConnection.cpp"; path = "../../src/events/juce_InterprocessConnection.cpp"; sourceTree = "SOURCE_ROOT"; }; - 4B935D7360C9F166C80A158D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_InterprocessConnection.h"; path = "../../src/events/juce_InterprocessConnection.h"; sourceTree = "SOURCE_ROOT"; }; - 843A7B398E9411F0AF28D65D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_InterprocessConnectionServer.cpp"; path = "../../src/events/juce_InterprocessConnectionServer.cpp"; sourceTree = "SOURCE_ROOT"; }; - 57DD8EEE88C0D366E0354478 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_InterprocessConnectionServer.h"; path = "../../src/events/juce_InterprocessConnectionServer.h"; sourceTree = "SOURCE_ROOT"; }; - 80633D64E9EFA1433454669B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ListenerList.h"; path = "../../src/events/juce_ListenerList.h"; sourceTree = "SOURCE_ROOT"; }; - 9CF077D3ED7B7B56F351AAF6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Message.cpp"; path = "../../src/events/juce_Message.cpp"; sourceTree = "SOURCE_ROOT"; }; - 7A1219C6560BDBE2E170D2A9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Message.h"; path = "../../src/events/juce_Message.h"; sourceTree = "SOURCE_ROOT"; }; - E594F70DC2F292FF1EF65CB6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MessageListener.cpp"; path = "../../src/events/juce_MessageListener.cpp"; sourceTree = "SOURCE_ROOT"; }; - BE17B7279B4BF40E51C12F47 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MessageListener.h"; path = "../../src/events/juce_MessageListener.h"; sourceTree = "SOURCE_ROOT"; }; - E2D07ED5E1A4A460E0DEF59C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MessageManager.cpp"; path = "../../src/events/juce_MessageManager.cpp"; sourceTree = "SOURCE_ROOT"; }; - 2EBDE3FF4894D72C310C9F84 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MessageManager.h"; path = "../../src/events/juce_MessageManager.h"; sourceTree = "SOURCE_ROOT"; }; - 1F2CFBF13ADCA05C0DC2D7D4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MultiTimer.cpp"; path = "../../src/events/juce_MultiTimer.cpp"; sourceTree = "SOURCE_ROOT"; }; - C51E9973A6FAB635081B9FDC = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MultiTimer.h"; path = "../../src/events/juce_MultiTimer.h"; sourceTree = "SOURCE_ROOT"; }; - C818B558D6D5B62A80621281 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Timer.cpp"; path = "../../src/events/juce_Timer.cpp"; sourceTree = "SOURCE_ROOT"; }; - 32C0312A5D246D41AAD98A11 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Timer.h"; path = "../../src/events/juce_Timer.h"; sourceTree = "SOURCE_ROOT"; }; - D0D9267E200BD462361810F7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Component.cpp"; path = "../../src/gui/components/juce_Component.cpp"; sourceTree = "SOURCE_ROOT"; }; - 17A21B31FD41D00A4088FADF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Component.h"; path = "../../src/gui/components/juce_Component.h"; sourceTree = "SOURCE_ROOT"; }; - E13F33E386E1A0D5FC546521 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ComponentListener.cpp"; path = "../../src/gui/components/juce_ComponentListener.cpp"; sourceTree = "SOURCE_ROOT"; }; - A0D6308567AAA50D1163D9D3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ComponentListener.h"; path = "../../src/gui/components/juce_ComponentListener.h"; sourceTree = "SOURCE_ROOT"; }; - 621B3A4B154182F69DDE2989 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Desktop.cpp"; path = "../../src/gui/components/juce_Desktop.cpp"; sourceTree = "SOURCE_ROOT"; }; - A1F58C1A972425C2B43DD1B3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Desktop.h"; path = "../../src/gui/components/juce_Desktop.h"; sourceTree = "SOURCE_ROOT"; }; - 2FFF9AFE4BD9437CE096E52B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ModalComponentManager.cpp"; path = "../../src/gui/components/juce_ModalComponentManager.cpp"; sourceTree = "SOURCE_ROOT"; }; - 41C8C324F13ADA3423FC3B0F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ModalComponentManager.h"; path = "../../src/gui/components/juce_ModalComponentManager.h"; sourceTree = "SOURCE_ROOT"; }; - 18EE6576A9ED098632CE5155 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ArrowButton.cpp"; path = "../../src/gui/components/buttons/juce_ArrowButton.cpp"; sourceTree = "SOURCE_ROOT"; }; - EB182DC4124FEFFFC87D12C4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ArrowButton.h"; path = "../../src/gui/components/buttons/juce_ArrowButton.h"; sourceTree = "SOURCE_ROOT"; }; - 8B1C747E63EEF036AD9AF3D8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Button.cpp"; path = "../../src/gui/components/buttons/juce_Button.cpp"; sourceTree = "SOURCE_ROOT"; }; - ECA97019B42083AD879B5B97 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Button.h"; path = "../../src/gui/components/buttons/juce_Button.h"; sourceTree = "SOURCE_ROOT"; }; - 1C3D15546065C1A9AA5AA0C6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DrawableButton.cpp"; path = "../../src/gui/components/buttons/juce_DrawableButton.cpp"; sourceTree = "SOURCE_ROOT"; }; - B2032A24364695450A5E6A76 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DrawableButton.h"; path = "../../src/gui/components/buttons/juce_DrawableButton.h"; sourceTree = "SOURCE_ROOT"; }; - BA415BD77DF4B2F4760D1387 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_HyperlinkButton.cpp"; path = "../../src/gui/components/buttons/juce_HyperlinkButton.cpp"; sourceTree = "SOURCE_ROOT"; }; - B72C0FB8DDC0F1102DF42943 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_HyperlinkButton.h"; path = "../../src/gui/components/buttons/juce_HyperlinkButton.h"; sourceTree = "SOURCE_ROOT"; }; - 6930E651AEE97FD47E185EC9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ImageButton.cpp"; path = "../../src/gui/components/buttons/juce_ImageButton.cpp"; sourceTree = "SOURCE_ROOT"; }; - 96FD3A02BA915E460520A0B7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ImageButton.h"; path = "../../src/gui/components/buttons/juce_ImageButton.h"; sourceTree = "SOURCE_ROOT"; }; - E927E4A58A84B21AA6B38A44 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ShapeButton.cpp"; path = "../../src/gui/components/buttons/juce_ShapeButton.cpp"; sourceTree = "SOURCE_ROOT"; }; - F2212B7F42E26C3DD86800F2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ShapeButton.h"; path = "../../src/gui/components/buttons/juce_ShapeButton.h"; sourceTree = "SOURCE_ROOT"; }; - 09AE2C7E2573204A7A35452B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TextButton.cpp"; path = "../../src/gui/components/buttons/juce_TextButton.cpp"; sourceTree = "SOURCE_ROOT"; }; - B394145555DCB9E0FAA5522C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TextButton.h"; path = "../../src/gui/components/buttons/juce_TextButton.h"; sourceTree = "SOURCE_ROOT"; }; - 9846D4523B3425BBB04107EE = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ToggleButton.cpp"; path = "../../src/gui/components/buttons/juce_ToggleButton.cpp"; sourceTree = "SOURCE_ROOT"; }; - 455176F8EDBA7A9DCEAA1367 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ToggleButton.h"; path = "../../src/gui/components/buttons/juce_ToggleButton.h"; sourceTree = "SOURCE_ROOT"; }; - F750738F398054AB38250780 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ToolbarButton.cpp"; path = "../../src/gui/components/buttons/juce_ToolbarButton.cpp"; sourceTree = "SOURCE_ROOT"; }; - DFF08DC68372AEE17EAA9CC7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ToolbarButton.h"; path = "../../src/gui/components/buttons/juce_ToolbarButton.h"; sourceTree = "SOURCE_ROOT"; }; - A3CB18F915377AC3FFA2E5F4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_CodeDocument.cpp"; path = "../../src/gui/components/code_editor/juce_CodeDocument.cpp"; sourceTree = "SOURCE_ROOT"; }; - B28C2EBD0846A09DAEDDFF4E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CodeDocument.h"; path = "../../src/gui/components/code_editor/juce_CodeDocument.h"; sourceTree = "SOURCE_ROOT"; }; - 04F48B09426293224576DA9A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_CodeEditorComponent.cpp"; path = "../../src/gui/components/code_editor/juce_CodeEditorComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - DF6B4E787E39CD446ED2EEEE = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CodeEditorComponent.h"; path = "../../src/gui/components/code_editor/juce_CodeEditorComponent.h"; sourceTree = "SOURCE_ROOT"; }; - C992FDA4396430392CFAD150 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CodeTokeniser.h"; path = "../../src/gui/components/code_editor/juce_CodeTokeniser.h"; sourceTree = "SOURCE_ROOT"; }; - 346CC505FAFEE9451040108D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_CPlusPlusCodeTokeniser.cpp"; path = "../../src/gui/components/code_editor/juce_CPlusPlusCodeTokeniser.cpp"; sourceTree = "SOURCE_ROOT"; }; - 3384A91143018ED9346E4118 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CPlusPlusCodeTokeniser.h"; path = "../../src/gui/components/code_editor/juce_CPlusPlusCodeTokeniser.h"; sourceTree = "SOURCE_ROOT"; }; - ADC16C18C8237A7F8E35E37A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ComboBox.cpp"; path = "../../src/gui/components/controls/juce_ComboBox.cpp"; sourceTree = "SOURCE_ROOT"; }; - D8EB3EA456D9FCC211CD1ED5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ComboBox.h"; path = "../../src/gui/components/controls/juce_ComboBox.h"; sourceTree = "SOURCE_ROOT"; }; - 0D3FA24FF38399E0EDA80860 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ImageComponent.cpp"; path = "../../src/gui/components/controls/juce_ImageComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - CA3454A9B6F80A2F4735C37E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ImageComponent.h"; path = "../../src/gui/components/controls/juce_ImageComponent.h"; sourceTree = "SOURCE_ROOT"; }; - 7330A9643F50DE8BEACDBB61 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Label.cpp"; path = "../../src/gui/components/controls/juce_Label.cpp"; sourceTree = "SOURCE_ROOT"; }; - C0CC0FA84A4F7AA76C1611CB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Label.h"; path = "../../src/gui/components/controls/juce_Label.h"; sourceTree = "SOURCE_ROOT"; }; - 1BC6C010045A06BDB4C684F6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ListBox.cpp"; path = "../../src/gui/components/controls/juce_ListBox.cpp"; sourceTree = "SOURCE_ROOT"; }; - 3FFCAECECC0D469A010F7AF1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ListBox.h"; path = "../../src/gui/components/controls/juce_ListBox.h"; sourceTree = "SOURCE_ROOT"; }; - 71B6CE03D6DB07BB293C8206 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ProgressBar.cpp"; path = "../../src/gui/components/controls/juce_ProgressBar.cpp"; sourceTree = "SOURCE_ROOT"; }; - 1DB68310EA4D6180FF948AA0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ProgressBar.h"; path = "../../src/gui/components/controls/juce_ProgressBar.h"; sourceTree = "SOURCE_ROOT"; }; - 3CE16163A43A6E67428385EE = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Slider.cpp"; path = "../../src/gui/components/controls/juce_Slider.cpp"; sourceTree = "SOURCE_ROOT"; }; - E698677EEC8E88CAFF542764 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Slider.h"; path = "../../src/gui/components/controls/juce_Slider.h"; sourceTree = "SOURCE_ROOT"; }; - 6BB68B37C7B0BB4DA8326647 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TableHeaderComponent.cpp"; path = "../../src/gui/components/controls/juce_TableHeaderComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - 1EA844F7CC5377A14B0FD21C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TableHeaderComponent.h"; path = "../../src/gui/components/controls/juce_TableHeaderComponent.h"; sourceTree = "SOURCE_ROOT"; }; - 76E073B2A3F59A3ACD20CC87 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TableListBox.cpp"; path = "../../src/gui/components/controls/juce_TableListBox.cpp"; sourceTree = "SOURCE_ROOT"; }; - 8BA30F0AFF5EA0E1A0203ACB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TableListBox.h"; path = "../../src/gui/components/controls/juce_TableListBox.h"; sourceTree = "SOURCE_ROOT"; }; - A4E66D702028A22D8157241C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TextEditor.cpp"; path = "../../src/gui/components/controls/juce_TextEditor.cpp"; sourceTree = "SOURCE_ROOT"; }; - CB6BF5E15522D8A272032AE9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TextEditor.h"; path = "../../src/gui/components/controls/juce_TextEditor.h"; sourceTree = "SOURCE_ROOT"; }; - 53EB02EEDF5E7971EAB9E795 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Toolbar.cpp"; path = "../../src/gui/components/controls/juce_Toolbar.cpp"; sourceTree = "SOURCE_ROOT"; }; - 82FEB35063C3559D2F46AA6F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Toolbar.h"; path = "../../src/gui/components/controls/juce_Toolbar.h"; sourceTree = "SOURCE_ROOT"; }; - 37E48B8F8AD2BC448E5935C7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ToolbarItemComponent.cpp"; path = "../../src/gui/components/controls/juce_ToolbarItemComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - A77096E86054F70AC0A3B69E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ToolbarItemComponent.h"; path = "../../src/gui/components/controls/juce_ToolbarItemComponent.h"; sourceTree = "SOURCE_ROOT"; }; - 981BACFF7892B83828313D8E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ToolbarItemFactory.h"; path = "../../src/gui/components/controls/juce_ToolbarItemFactory.h"; sourceTree = "SOURCE_ROOT"; }; - D317D4B5BA40A5754EE56F47 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ToolbarItemPalette.cpp"; path = "../../src/gui/components/controls/juce_ToolbarItemPalette.cpp"; sourceTree = "SOURCE_ROOT"; }; - 8400CA0D3C2AB7A60A7329FB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ToolbarItemPalette.h"; path = "../../src/gui/components/controls/juce_ToolbarItemPalette.h"; sourceTree = "SOURCE_ROOT"; }; - BC209F6862D5923B8F9E3080 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TreeView.cpp"; path = "../../src/gui/components/controls/juce_TreeView.cpp"; sourceTree = "SOURCE_ROOT"; }; - B0D261D42091AAD1560A0D63 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TreeView.h"; path = "../../src/gui/components/controls/juce_TreeView.h"; sourceTree = "SOURCE_ROOT"; }; - B60FE8BFA252E3EF2D60B77A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DirectoryContentsDisplayComponent.cpp"; path = "../../src/gui/components/filebrowser/juce_DirectoryContentsDisplayComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - 79ABAD7BB654030EF29B8B9C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DirectoryContentsDisplayComponent.h"; path = "../../src/gui/components/filebrowser/juce_DirectoryContentsDisplayComponent.h"; sourceTree = "SOURCE_ROOT"; }; - D3B56583D4F60069296DB959 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DirectoryContentsList.cpp"; path = "../../src/gui/components/filebrowser/juce_DirectoryContentsList.cpp"; sourceTree = "SOURCE_ROOT"; }; - 3A4ABC7E24F155A8CAF027B3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DirectoryContentsList.h"; path = "../../src/gui/components/filebrowser/juce_DirectoryContentsList.h"; sourceTree = "SOURCE_ROOT"; }; - B1DEB4E0BBFE7E2D052165BD = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileBrowserComponent.cpp"; path = "../../src/gui/components/filebrowser/juce_FileBrowserComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - F9FEE6DAB2B2752AC13D7286 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileBrowserComponent.h"; path = "../../src/gui/components/filebrowser/juce_FileBrowserComponent.h"; sourceTree = "SOURCE_ROOT"; }; - 85F0A0454489E4AF1F80AC83 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileBrowserListener.h"; path = "../../src/gui/components/filebrowser/juce_FileBrowserListener.h"; sourceTree = "SOURCE_ROOT"; }; - 102BAE57AAA43A7685FCBD9A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileChooser.cpp"; path = "../../src/gui/components/filebrowser/juce_FileChooser.cpp"; sourceTree = "SOURCE_ROOT"; }; - F631A108CB5015BFA2E25E00 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileChooser.h"; path = "../../src/gui/components/filebrowser/juce_FileChooser.h"; sourceTree = "SOURCE_ROOT"; }; - 730CAA344708954DE271072C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileChooserDialogBox.cpp"; path = "../../src/gui/components/filebrowser/juce_FileChooserDialogBox.cpp"; sourceTree = "SOURCE_ROOT"; }; - 295793C7AA1A57DC4BBCBBC4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileChooserDialogBox.h"; path = "../../src/gui/components/filebrowser/juce_FileChooserDialogBox.h"; sourceTree = "SOURCE_ROOT"; }; - D54308F25AEE3110A166F2BE = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileFilter.cpp"; path = "../../src/gui/components/filebrowser/juce_FileFilter.cpp"; sourceTree = "SOURCE_ROOT"; }; - 3AF50EADB5B2C973E0C8EE9F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileFilter.h"; path = "../../src/gui/components/filebrowser/juce_FileFilter.h"; sourceTree = "SOURCE_ROOT"; }; - 9A9D8C524A070162517620E5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileListComponent.cpp"; path = "../../src/gui/components/filebrowser/juce_FileListComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - CD6C610A843822A7FA53E9D7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileListComponent.h"; path = "../../src/gui/components/filebrowser/juce_FileListComponent.h"; sourceTree = "SOURCE_ROOT"; }; - CA1B41922D8094982F967DBD = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FilenameComponent.cpp"; path = "../../src/gui/components/filebrowser/juce_FilenameComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - E9E66775B2F13ACD0B751E69 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FilenameComponent.h"; path = "../../src/gui/components/filebrowser/juce_FilenameComponent.h"; sourceTree = "SOURCE_ROOT"; }; - B689E250203DE38D6D4F39F9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FilePreviewComponent.h"; path = "../../src/gui/components/filebrowser/juce_FilePreviewComponent.h"; sourceTree = "SOURCE_ROOT"; }; - 29DFAA512171B967D687A945 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileSearchPathListComponent.cpp"; path = "../../src/gui/components/filebrowser/juce_FileSearchPathListComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - 0AB8288D92FDFA00F30FB8DE = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileSearchPathListComponent.h"; path = "../../src/gui/components/filebrowser/juce_FileSearchPathListComponent.h"; sourceTree = "SOURCE_ROOT"; }; - A418FC3BDDBF1CE9F2903490 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileTreeComponent.cpp"; path = "../../src/gui/components/filebrowser/juce_FileTreeComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - 0EAD906B617A1A17305CB9F4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileTreeComponent.h"; path = "../../src/gui/components/filebrowser/juce_FileTreeComponent.h"; sourceTree = "SOURCE_ROOT"; }; - 949854EDE6B5B16CEFB6108F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ImagePreviewComponent.cpp"; path = "../../src/gui/components/filebrowser/juce_ImagePreviewComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - F39059E72B927A700010851B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ImagePreviewComponent.h"; path = "../../src/gui/components/filebrowser/juce_ImagePreviewComponent.h"; sourceTree = "SOURCE_ROOT"; }; - 8A67B45A2BA1D19D1AC43315 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_WildcardFileFilter.cpp"; path = "../../src/gui/components/filebrowser/juce_WildcardFileFilter.cpp"; sourceTree = "SOURCE_ROOT"; }; - ECDD0F8397F3EE4E7FA7ACCC = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_WildcardFileFilter.h"; path = "../../src/gui/components/filebrowser/juce_WildcardFileFilter.h"; sourceTree = "SOURCE_ROOT"; }; - 912C419859C9C56BC96AA6FB = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_CaretComponent.cpp"; path = "../../src/gui/components/keyboard/juce_CaretComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - 717295136FD426125079F78C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CaretComponent.h"; path = "../../src/gui/components/keyboard/juce_CaretComponent.h"; sourceTree = "SOURCE_ROOT"; }; - 5ABC6616473BA4791AA8101E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_KeyboardFocusTraverser.cpp"; path = "../../src/gui/components/keyboard/juce_KeyboardFocusTraverser.cpp"; sourceTree = "SOURCE_ROOT"; }; - F61C34EE417006881D0869F4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_KeyboardFocusTraverser.h"; path = "../../src/gui/components/keyboard/juce_KeyboardFocusTraverser.h"; sourceTree = "SOURCE_ROOT"; }; - 29A79478AE8567250972ED43 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_KeyListener.cpp"; path = "../../src/gui/components/keyboard/juce_KeyListener.cpp"; sourceTree = "SOURCE_ROOT"; }; - FB080C47434A8FAB73B8F486 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_KeyListener.h"; path = "../../src/gui/components/keyboard/juce_KeyListener.h"; sourceTree = "SOURCE_ROOT"; }; - 7F5A271EAB78C7CF8B2341DE = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_KeyMappingEditorComponent.cpp"; path = "../../src/gui/components/keyboard/juce_KeyMappingEditorComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - 92EDE6EA48F94DC5A0BCB24A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_KeyMappingEditorComponent.h"; path = "../../src/gui/components/keyboard/juce_KeyMappingEditorComponent.h"; sourceTree = "SOURCE_ROOT"; }; - A00C6593BFBFA76043BC0C06 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_KeyPress.cpp"; path = "../../src/gui/components/keyboard/juce_KeyPress.cpp"; sourceTree = "SOURCE_ROOT"; }; - 02982EB6A81020D3D421AED3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_KeyPress.h"; path = "../../src/gui/components/keyboard/juce_KeyPress.h"; sourceTree = "SOURCE_ROOT"; }; - F1A33029252D29A6ADF171B0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_KeyPressMappingSet.cpp"; path = "../../src/gui/components/keyboard/juce_KeyPressMappingSet.cpp"; sourceTree = "SOURCE_ROOT"; }; - 15C6FD019B274AA51B4E2D76 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_KeyPressMappingSet.h"; path = "../../src/gui/components/keyboard/juce_KeyPressMappingSet.h"; sourceTree = "SOURCE_ROOT"; }; - B1E8FF009812F29C2620E6BB = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ModifierKeys.cpp"; path = "../../src/gui/components/keyboard/juce_ModifierKeys.cpp"; sourceTree = "SOURCE_ROOT"; }; - FAEEA3536AD17B2667A1BB94 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ModifierKeys.h"; path = "../../src/gui/components/keyboard/juce_ModifierKeys.h"; sourceTree = "SOURCE_ROOT"; }; - D64DD9F41E4598606855DFCF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TextEditorKeyMapper.h"; path = "../../src/gui/components/keyboard/juce_TextEditorKeyMapper.h"; sourceTree = "SOURCE_ROOT"; }; - 7356F5E93CEA4D472D83D8E5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TextInputTarget.h"; path = "../../src/gui/components/keyboard/juce_TextInputTarget.h"; sourceTree = "SOURCE_ROOT"; }; - 921B616E2229AEB6390D2B57 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ComponentAnimator.cpp"; path = "../../src/gui/components/layout/juce_ComponentAnimator.cpp"; sourceTree = "SOURCE_ROOT"; }; - FE1072B5FB77E8FEE1BEBDFE = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ComponentAnimator.h"; path = "../../src/gui/components/layout/juce_ComponentAnimator.h"; sourceTree = "SOURCE_ROOT"; }; - 07191E1A9805FA6E6F253FF6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ComponentBoundsConstrainer.cpp"; path = "../../src/gui/components/layout/juce_ComponentBoundsConstrainer.cpp"; sourceTree = "SOURCE_ROOT"; }; - 2EC173A08676F6E592A7B347 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ComponentBoundsConstrainer.h"; path = "../../src/gui/components/layout/juce_ComponentBoundsConstrainer.h"; sourceTree = "SOURCE_ROOT"; }; - 45E5EE9E0173683D721FABDA = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ComponentBuilder.cpp"; path = "../../src/gui/components/layout/juce_ComponentBuilder.cpp"; sourceTree = "SOURCE_ROOT"; }; - 2D3A362DD3833B9E70B10FD3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ComponentBuilder.h"; path = "../../src/gui/components/layout/juce_ComponentBuilder.h"; sourceTree = "SOURCE_ROOT"; }; - F8FCCCE06D31FEF697FCD80D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ComponentMovementWatcher.cpp"; path = "../../src/gui/components/layout/juce_ComponentMovementWatcher.cpp"; sourceTree = "SOURCE_ROOT"; }; - 44CDA79090B115C3B62A2168 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ComponentMovementWatcher.h"; path = "../../src/gui/components/layout/juce_ComponentMovementWatcher.h"; sourceTree = "SOURCE_ROOT"; }; - A6AD7357F905309D1B461EB7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GroupComponent.cpp"; path = "../../src/gui/components/layout/juce_GroupComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - E9242E8425497D889C764C66 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_GroupComponent.h"; path = "../../src/gui/components/layout/juce_GroupComponent.h"; sourceTree = "SOURCE_ROOT"; }; - FF046140CCF1EDB0DFF80178 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MultiDocumentPanel.cpp"; path = "../../src/gui/components/layout/juce_MultiDocumentPanel.cpp"; sourceTree = "SOURCE_ROOT"; }; - B6A223FB5B4A9388C83D6FC7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MultiDocumentPanel.h"; path = "../../src/gui/components/layout/juce_MultiDocumentPanel.h"; sourceTree = "SOURCE_ROOT"; }; - A95F42C5CB0C2E5052B31568 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ResizableBorderComponent.cpp"; path = "../../src/gui/components/layout/juce_ResizableBorderComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - 600B2FDBBBE812784CB49A69 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ResizableBorderComponent.h"; path = "../../src/gui/components/layout/juce_ResizableBorderComponent.h"; sourceTree = "SOURCE_ROOT"; }; - A31221E2A50CCE9DF06B5F4B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ResizableCornerComponent.cpp"; path = "../../src/gui/components/layout/juce_ResizableCornerComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - CB54AC3D311C44A1F3B463A5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ResizableCornerComponent.h"; path = "../../src/gui/components/layout/juce_ResizableCornerComponent.h"; sourceTree = "SOURCE_ROOT"; }; - 3D8B0E86C98E2EE49AE868C8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ResizableEdgeComponent.cpp"; path = "../../src/gui/components/layout/juce_ResizableEdgeComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - 238965266F88730956D776DB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ResizableEdgeComponent.h"; path = "../../src/gui/components/layout/juce_ResizableEdgeComponent.h"; sourceTree = "SOURCE_ROOT"; }; - B116FEC4D544DB8E38CB571E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ScrollBar.cpp"; path = "../../src/gui/components/layout/juce_ScrollBar.cpp"; sourceTree = "SOURCE_ROOT"; }; - 797C94BB7F42CBBAACCFFB87 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ScrollBar.h"; path = "../../src/gui/components/layout/juce_ScrollBar.h"; sourceTree = "SOURCE_ROOT"; }; - F1F65C9E7394E04E073A57A4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_StretchableLayoutManager.cpp"; path = "../../src/gui/components/layout/juce_StretchableLayoutManager.cpp"; sourceTree = "SOURCE_ROOT"; }; - F64E8284F142600B9F519B07 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_StretchableLayoutManager.h"; path = "../../src/gui/components/layout/juce_StretchableLayoutManager.h"; sourceTree = "SOURCE_ROOT"; }; - 993C90B10202DA78FA31CC58 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_StretchableLayoutResizerBar.cpp"; path = "../../src/gui/components/layout/juce_StretchableLayoutResizerBar.cpp"; sourceTree = "SOURCE_ROOT"; }; - 8C0FFF811E06D162050CAB14 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_StretchableLayoutResizerBar.h"; path = "../../src/gui/components/layout/juce_StretchableLayoutResizerBar.h"; sourceTree = "SOURCE_ROOT"; }; - 079CFB5DEF6F2B71E2910A22 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_StretchableObjectResizer.cpp"; path = "../../src/gui/components/layout/juce_StretchableObjectResizer.cpp"; sourceTree = "SOURCE_ROOT"; }; - D5F5282BE0F43A5E16824749 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_StretchableObjectResizer.h"; path = "../../src/gui/components/layout/juce_StretchableObjectResizer.h"; sourceTree = "SOURCE_ROOT"; }; - 143F36BCDE7A65EBA33900ED = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TabbedButtonBar.cpp"; path = "../../src/gui/components/layout/juce_TabbedButtonBar.cpp"; sourceTree = "SOURCE_ROOT"; }; - 093E54DECB8191CA74D79176 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TabbedButtonBar.h"; path = "../../src/gui/components/layout/juce_TabbedButtonBar.h"; sourceTree = "SOURCE_ROOT"; }; - F2C653BA4552E6838DFA4F87 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TabbedComponent.cpp"; path = "../../src/gui/components/layout/juce_TabbedComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - C42D9251031A81B5CF2C843B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TabbedComponent.h"; path = "../../src/gui/components/layout/juce_TabbedComponent.h"; sourceTree = "SOURCE_ROOT"; }; - D41423657626ACA672A9DED9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Viewport.cpp"; path = "../../src/gui/components/layout/juce_Viewport.cpp"; sourceTree = "SOURCE_ROOT"; }; - 811149E18993F029165D330D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Viewport.h"; path = "../../src/gui/components/layout/juce_Viewport.h"; sourceTree = "SOURCE_ROOT"; }; - FD004BDDCEDB7E324983F70C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_LookAndFeel.cpp"; path = "../../src/gui/components/lookandfeel/juce_LookAndFeel.cpp"; sourceTree = "SOURCE_ROOT"; }; - 7B991020107EC0D54965BCA2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LookAndFeel.h"; path = "../../src/gui/components/lookandfeel/juce_LookAndFeel.h"; sourceTree = "SOURCE_ROOT"; }; - B92ACF027E63D1C788DEC893 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OldSchoolLookAndFeel.cpp"; path = "../../src/gui/components/lookandfeel/juce_OldSchoolLookAndFeel.cpp"; sourceTree = "SOURCE_ROOT"; }; - 3C739F61EE232C75546D4DCF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OldSchoolLookAndFeel.h"; path = "../../src/gui/components/lookandfeel/juce_OldSchoolLookAndFeel.h"; sourceTree = "SOURCE_ROOT"; }; - 218D7D73C086866E587FFD01 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MenuBarComponent.cpp"; path = "../../src/gui/components/menus/juce_MenuBarComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - BB93D3C283731C0B25B7AAAE = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MenuBarComponent.h"; path = "../../src/gui/components/menus/juce_MenuBarComponent.h"; sourceTree = "SOURCE_ROOT"; }; - 1DDE0A8E4C5857715D9B5FAE = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MenuBarModel.cpp"; path = "../../src/gui/components/menus/juce_MenuBarModel.cpp"; sourceTree = "SOURCE_ROOT"; }; - 502B3625329816EA6330465F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MenuBarModel.h"; path = "../../src/gui/components/menus/juce_MenuBarModel.h"; sourceTree = "SOURCE_ROOT"; }; - 6AACD2FD239E39F87B666C6F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PopupMenu.cpp"; path = "../../src/gui/components/menus/juce_PopupMenu.cpp"; sourceTree = "SOURCE_ROOT"; }; - A563BC883D801CF5956DC4BC = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PopupMenu.h"; path = "../../src/gui/components/menus/juce_PopupMenu.h"; sourceTree = "SOURCE_ROOT"; }; - 9E4B3BAB9BDB06B60D28DF48 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ComponentDragger.cpp"; path = "../../src/gui/components/mouse/juce_ComponentDragger.cpp"; sourceTree = "SOURCE_ROOT"; }; - BCDD702ED33BADF3FC19384C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ComponentDragger.h"; path = "../../src/gui/components/mouse/juce_ComponentDragger.h"; sourceTree = "SOURCE_ROOT"; }; - 3D74B30C63465C32E26D8E33 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DragAndDropContainer.cpp"; path = "../../src/gui/components/mouse/juce_DragAndDropContainer.cpp"; sourceTree = "SOURCE_ROOT"; }; - D4993649A93B73052C8045EF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DragAndDropContainer.h"; path = "../../src/gui/components/mouse/juce_DragAndDropContainer.h"; sourceTree = "SOURCE_ROOT"; }; - 31EE71EA61B4ED293481EB97 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DragAndDropTarget.h"; path = "../../src/gui/components/mouse/juce_DragAndDropTarget.h"; sourceTree = "SOURCE_ROOT"; }; - A08313B5F112579D130373BF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileDragAndDropTarget.h"; path = "../../src/gui/components/mouse/juce_FileDragAndDropTarget.h"; sourceTree = "SOURCE_ROOT"; }; - E1CA0B04EDE60771B81B9700 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LassoComponent.h"; path = "../../src/gui/components/mouse/juce_LassoComponent.h"; sourceTree = "SOURCE_ROOT"; }; - 944BC51C440C167C5B2A23E3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MouseCursor.cpp"; path = "../../src/gui/components/mouse/juce_MouseCursor.cpp"; sourceTree = "SOURCE_ROOT"; }; - 136109B3076DDA7B2E01CF90 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MouseCursor.h"; path = "../../src/gui/components/mouse/juce_MouseCursor.h"; sourceTree = "SOURCE_ROOT"; }; - 067D84F9291770240D1AB5B4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MouseEvent.cpp"; path = "../../src/gui/components/mouse/juce_MouseEvent.cpp"; sourceTree = "SOURCE_ROOT"; }; - 50C02B44D0CB18898F575B1E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MouseEvent.h"; path = "../../src/gui/components/mouse/juce_MouseEvent.h"; sourceTree = "SOURCE_ROOT"; }; - 441257DD380138C03568FCBD = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MouseInputSource.cpp"; path = "../../src/gui/components/mouse/juce_MouseInputSource.cpp"; sourceTree = "SOURCE_ROOT"; }; - 07CF9AF337779EB486AC92BF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MouseInputSource.h"; path = "../../src/gui/components/mouse/juce_MouseInputSource.h"; sourceTree = "SOURCE_ROOT"; }; - 2886656DF7ACC9DDC888827F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MouseListener.cpp"; path = "../../src/gui/components/mouse/juce_MouseListener.cpp"; sourceTree = "SOURCE_ROOT"; }; - 0C28F27F9D1CE6CD65185760 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MouseListener.h"; path = "../../src/gui/components/mouse/juce_MouseListener.h"; sourceTree = "SOURCE_ROOT"; }; - 89AA49DD2A63D80E90A56768 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TooltipClient.h"; path = "../../src/gui/components/mouse/juce_TooltipClient.h"; sourceTree = "SOURCE_ROOT"; }; - 82DFF1BD3665DC32672FCCE8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MarkerList.cpp"; path = "../../src/gui/components/positioning/juce_MarkerList.cpp"; sourceTree = "SOURCE_ROOT"; }; - 5B6CD1833A98F9844B7E3FF4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MarkerList.h"; path = "../../src/gui/components/positioning/juce_MarkerList.h"; sourceTree = "SOURCE_ROOT"; }; - D39C0B853C3EBBBD11E7C71E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RelativeCoordinate.cpp"; path = "../../src/gui/components/positioning/juce_RelativeCoordinate.cpp"; sourceTree = "SOURCE_ROOT"; }; - 657546D70AB7B2709619E07A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RelativeCoordinate.h"; path = "../../src/gui/components/positioning/juce_RelativeCoordinate.h"; sourceTree = "SOURCE_ROOT"; }; - D31704DAB806B6AF3ED52DC7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RelativeCoordinatePositioner.cpp"; path = "../../src/gui/components/positioning/juce_RelativeCoordinatePositioner.cpp"; sourceTree = "SOURCE_ROOT"; }; - 574EC603B2B1189687851319 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RelativeCoordinatePositioner.h"; path = "../../src/gui/components/positioning/juce_RelativeCoordinatePositioner.h"; sourceTree = "SOURCE_ROOT"; }; - 243EF1A31A779413BC2D5B98 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RelativeParallelogram.cpp"; path = "../../src/gui/components/positioning/juce_RelativeParallelogram.cpp"; sourceTree = "SOURCE_ROOT"; }; - 72EFFDE39C7255D50F926944 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RelativeParallelogram.h"; path = "../../src/gui/components/positioning/juce_RelativeParallelogram.h"; sourceTree = "SOURCE_ROOT"; }; - 36BB6DDF702EC9B3DAC851FF = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RelativePoint.cpp"; path = "../../src/gui/components/positioning/juce_RelativePoint.cpp"; sourceTree = "SOURCE_ROOT"; }; - A3B6342C6207D452F6AD985C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RelativePoint.h"; path = "../../src/gui/components/positioning/juce_RelativePoint.h"; sourceTree = "SOURCE_ROOT"; }; - 9DA988F1D7CE29E0DFED7EF0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RelativePointPath.cpp"; path = "../../src/gui/components/positioning/juce_RelativePointPath.cpp"; sourceTree = "SOURCE_ROOT"; }; - C1A3232DDB617A20D9C26526 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RelativePointPath.h"; path = "../../src/gui/components/positioning/juce_RelativePointPath.h"; sourceTree = "SOURCE_ROOT"; }; - 072D77C3834B1B3FB77F277B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RelativeRectangle.cpp"; path = "../../src/gui/components/positioning/juce_RelativeRectangle.cpp"; sourceTree = "SOURCE_ROOT"; }; - 749CA35420339A25BA4E500F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RelativeRectangle.h"; path = "../../src/gui/components/positioning/juce_RelativeRectangle.h"; sourceTree = "SOURCE_ROOT"; }; - 1C3FFBA02AE51EDD72A6250B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_BooleanPropertyComponent.cpp"; path = "../../src/gui/components/properties/juce_BooleanPropertyComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - B422688E380911F3C21E3F04 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BooleanPropertyComponent.h"; path = "../../src/gui/components/properties/juce_BooleanPropertyComponent.h"; sourceTree = "SOURCE_ROOT"; }; - C45E7E6B6E45DEFBF80940DD = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ButtonPropertyComponent.cpp"; path = "../../src/gui/components/properties/juce_ButtonPropertyComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - C1F662CED371C843E4EE03B2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ButtonPropertyComponent.h"; path = "../../src/gui/components/properties/juce_ButtonPropertyComponent.h"; sourceTree = "SOURCE_ROOT"; }; - ECCBF2452804ECB2D5B4BC50 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ChoicePropertyComponent.cpp"; path = "../../src/gui/components/properties/juce_ChoicePropertyComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - C6B318D6930A05FF86AD97DA = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ChoicePropertyComponent.h"; path = "../../src/gui/components/properties/juce_ChoicePropertyComponent.h"; sourceTree = "SOURCE_ROOT"; }; - E2C948680009D1744CEDBC25 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PropertyComponent.cpp"; path = "../../src/gui/components/properties/juce_PropertyComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - 5B9E9460EAA932889DDC4873 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PropertyComponent.h"; path = "../../src/gui/components/properties/juce_PropertyComponent.h"; sourceTree = "SOURCE_ROOT"; }; - 0984A4BA00D6AAFB463657F4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PropertyPanel.cpp"; path = "../../src/gui/components/properties/juce_PropertyPanel.cpp"; sourceTree = "SOURCE_ROOT"; }; - 02685CE4575D6E9B8CCC7738 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PropertyPanel.h"; path = "../../src/gui/components/properties/juce_PropertyPanel.h"; sourceTree = "SOURCE_ROOT"; }; - 3451124EC2809C9BB591DF93 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_SliderPropertyComponent.cpp"; path = "../../src/gui/components/properties/juce_SliderPropertyComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - B568DEC2B352281BC63B33CD = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SliderPropertyComponent.h"; path = "../../src/gui/components/properties/juce_SliderPropertyComponent.h"; sourceTree = "SOURCE_ROOT"; }; - 84311C1F5A8ACC8DF4D6FF34 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TextPropertyComponent.cpp"; path = "../../src/gui/components/properties/juce_TextPropertyComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - 3641ABC17D67038746897FA7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TextPropertyComponent.h"; path = "../../src/gui/components/properties/juce_TextPropertyComponent.h"; sourceTree = "SOURCE_ROOT"; }; - E748C93240CDD61473B0107F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ActiveXControlComponent.h"; path = "../../src/gui/components/special/juce_ActiveXControlComponent.h"; sourceTree = "SOURCE_ROOT"; }; - DED871B1C7458B15DE7C9234 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioDeviceSelectorComponent.cpp"; path = "../../src/gui/components/special/juce_AudioDeviceSelectorComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - 26E787FFC68224BF8EB5A458 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioDeviceSelectorComponent.h"; path = "../../src/gui/components/special/juce_AudioDeviceSelectorComponent.h"; sourceTree = "SOURCE_ROOT"; }; - 11F1658A055C45FE824FD2DB = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_BubbleComponent.cpp"; path = "../../src/gui/components/special/juce_BubbleComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - 4DFF179AFD87D34C7E23B1E5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BubbleComponent.h"; path = "../../src/gui/components/special/juce_BubbleComponent.h"; sourceTree = "SOURCE_ROOT"; }; - 4C3C3AFC3D97C1378B7D7435 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_BubbleMessageComponent.cpp"; path = "../../src/gui/components/special/juce_BubbleMessageComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - C25DFA2F2B673EB0146412BB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BubbleMessageComponent.h"; path = "../../src/gui/components/special/juce_BubbleMessageComponent.h"; sourceTree = "SOURCE_ROOT"; }; - 0A20E7E561633610A76A34AB = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ColourSelector.cpp"; path = "../../src/gui/components/special/juce_ColourSelector.cpp"; sourceTree = "SOURCE_ROOT"; }; - CD9F817B7EF0DA080668A3A8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ColourSelector.h"; path = "../../src/gui/components/special/juce_ColourSelector.h"; sourceTree = "SOURCE_ROOT"; }; - 4BF7A01BCE61A5068CA13D8F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DirectShowComponent.h"; path = "../../src/gui/components/special/juce_DirectShowComponent.h"; sourceTree = "SOURCE_ROOT"; }; - 9C1D5CDA61FB51F657DA8B22 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DropShadower.cpp"; path = "../../src/gui/components/special/juce_DropShadower.cpp"; sourceTree = "SOURCE_ROOT"; }; - 7DB8CFB77EA690ACF54C63B4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DropShadower.h"; path = "../../src/gui/components/special/juce_DropShadower.h"; sourceTree = "SOURCE_ROOT"; }; - 3C8C1AAF32DFECB89EB83271 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MidiKeyboardComponent.cpp"; path = "../../src/gui/components/special/juce_MidiKeyboardComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - 127FC743FE67E6EEF2531BD5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiKeyboardComponent.h"; path = "../../src/gui/components/special/juce_MidiKeyboardComponent.h"; sourceTree = "SOURCE_ROOT"; }; - 4387C6496C7079FB0032B99D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_NSViewComponent.h"; path = "../../src/gui/components/special/juce_NSViewComponent.h"; sourceTree = "SOURCE_ROOT"; }; - 1317F0BE5EC80371F744967B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OpenGLComponent.cpp"; path = "../../src/gui/components/special/juce_OpenGLComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - 826CC87E9E280F46B6D62B64 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OpenGLComponent.h"; path = "../../src/gui/components/special/juce_OpenGLComponent.h"; sourceTree = "SOURCE_ROOT"; }; - A34C0E63D41CFF5E55FD1D9E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PreferencesPanel.cpp"; path = "../../src/gui/components/special/juce_PreferencesPanel.cpp"; sourceTree = "SOURCE_ROOT"; }; - 6BE989C709D2D1D017548447 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PreferencesPanel.h"; path = "../../src/gui/components/special/juce_PreferencesPanel.h"; sourceTree = "SOURCE_ROOT"; }; - 529CB909220344AD55944372 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_QuickTimeMovieComponent.h"; path = "../../src/gui/components/special/juce_QuickTimeMovieComponent.h"; sourceTree = "SOURCE_ROOT"; }; - A9DB12F944D9DC336AD0A78B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ScopedXLock.h"; path = "../../src/gui/components/special/juce_ScopedXLock.h"; sourceTree = "SOURCE_ROOT"; }; - CC04F253CB70B20B774801A9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_SystemTrayIconComponent.cpp"; path = "../../src/gui/components/special/juce_SystemTrayIconComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - D9847FECA6801E9A61007D50 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SystemTrayIconComponent.h"; path = "../../src/gui/components/special/juce_SystemTrayIconComponent.h"; sourceTree = "SOURCE_ROOT"; }; - 740D1808DB934123F05A1598 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_WebBrowserComponent.h"; path = "../../src/gui/components/special/juce_WebBrowserComponent.h"; sourceTree = "SOURCE_ROOT"; }; - A5AAF4475138358F33D4904A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AlertWindow.cpp"; path = "../../src/gui/components/windows/juce_AlertWindow.cpp"; sourceTree = "SOURCE_ROOT"; }; - 72C4FDDDB8602591DD4F7B3B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AlertWindow.h"; path = "../../src/gui/components/windows/juce_AlertWindow.h"; sourceTree = "SOURCE_ROOT"; }; - 8AEF18EE9B12D4677F96B709 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_CallOutBox.cpp"; path = "../../src/gui/components/windows/juce_CallOutBox.cpp"; sourceTree = "SOURCE_ROOT"; }; - 8F54431CD3A672B1EB8335BE = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CallOutBox.h"; path = "../../src/gui/components/windows/juce_CallOutBox.h"; sourceTree = "SOURCE_ROOT"; }; - 2FFDC7636EFC2D7F74590A31 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ComponentPeer.cpp"; path = "../../src/gui/components/windows/juce_ComponentPeer.cpp"; sourceTree = "SOURCE_ROOT"; }; - 12C66C90F3192AFFD6BCEDB6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ComponentPeer.h"; path = "../../src/gui/components/windows/juce_ComponentPeer.h"; sourceTree = "SOURCE_ROOT"; }; - 929FEA5458430B7AE23BBB46 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DialogWindow.cpp"; path = "../../src/gui/components/windows/juce_DialogWindow.cpp"; sourceTree = "SOURCE_ROOT"; }; - C286C779DD52C29F86E3DBE9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DialogWindow.h"; path = "../../src/gui/components/windows/juce_DialogWindow.h"; sourceTree = "SOURCE_ROOT"; }; - 090907E4FE95EE2B11C1A0E1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DocumentWindow.cpp"; path = "../../src/gui/components/windows/juce_DocumentWindow.cpp"; sourceTree = "SOURCE_ROOT"; }; - 6E522DF13EC47755234A5D57 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DocumentWindow.h"; path = "../../src/gui/components/windows/juce_DocumentWindow.h"; sourceTree = "SOURCE_ROOT"; }; - 3FC6FC331B4E104D1DC223D6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_NativeMessageBox.h"; path = "../../src/gui/components/windows/juce_NativeMessageBox.h"; sourceTree = "SOURCE_ROOT"; }; - 2E4A5F7128313C23AD0356F7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ResizableWindow.cpp"; path = "../../src/gui/components/windows/juce_ResizableWindow.cpp"; sourceTree = "SOURCE_ROOT"; }; - 207CDD87107EAC8ED17DD601 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ResizableWindow.h"; path = "../../src/gui/components/windows/juce_ResizableWindow.h"; sourceTree = "SOURCE_ROOT"; }; - 87E57C8F3448D615271CD9F6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_SplashScreen.cpp"; path = "../../src/gui/components/windows/juce_SplashScreen.cpp"; sourceTree = "SOURCE_ROOT"; }; - 7C06FF93D655B9987000ECA9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SplashScreen.h"; path = "../../src/gui/components/windows/juce_SplashScreen.h"; sourceTree = "SOURCE_ROOT"; }; - D7772BC5E4E455AE2916A87D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ThreadWithProgressWindow.cpp"; path = "../../src/gui/components/windows/juce_ThreadWithProgressWindow.cpp"; sourceTree = "SOURCE_ROOT"; }; - 2FC449D291A603E26E938F52 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ThreadWithProgressWindow.h"; path = "../../src/gui/components/windows/juce_ThreadWithProgressWindow.h"; sourceTree = "SOURCE_ROOT"; }; - 6C33842C52B61407CACCA858 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TooltipWindow.cpp"; path = "../../src/gui/components/windows/juce_TooltipWindow.cpp"; sourceTree = "SOURCE_ROOT"; }; - 6165F485E931EF9F69D2145F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TooltipWindow.h"; path = "../../src/gui/components/windows/juce_TooltipWindow.h"; sourceTree = "SOURCE_ROOT"; }; - A24990B395323FBAC0BEFB5A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TopLevelWindow.cpp"; path = "../../src/gui/components/windows/juce_TopLevelWindow.cpp"; sourceTree = "SOURCE_ROOT"; }; - C7C882D550E3B72FA5EFA88A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TopLevelWindow.h"; path = "../../src/gui/components/windows/juce_TopLevelWindow.h"; sourceTree = "SOURCE_ROOT"; }; - EF18D0073BE50E572ADD9A1C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Colour.cpp"; path = "../../src/gui/graphics/colour/juce_Colour.cpp"; sourceTree = "SOURCE_ROOT"; }; - 8F6F9E1FD31E1A6268CFD3F9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Colour.h"; path = "../../src/gui/graphics/colour/juce_Colour.h"; sourceTree = "SOURCE_ROOT"; }; - D36EFC4421056277BA87387E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ColourGradient.cpp"; path = "../../src/gui/graphics/colour/juce_ColourGradient.cpp"; sourceTree = "SOURCE_ROOT"; }; - 3AE0BD116486BCE37F0D994C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ColourGradient.h"; path = "../../src/gui/graphics/colour/juce_ColourGradient.h"; sourceTree = "SOURCE_ROOT"; }; - 41AF663E626B8F6D319B9966 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Colours.cpp"; path = "../../src/gui/graphics/colour/juce_Colours.cpp"; sourceTree = "SOURCE_ROOT"; }; - C913994AAA448C9F22ACF100 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Colours.h"; path = "../../src/gui/graphics/colour/juce_Colours.h"; sourceTree = "SOURCE_ROOT"; }; - 112017AA0A061CF080DBD504 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PixelFormats.h"; path = "../../src/gui/graphics/colour/juce_PixelFormats.h"; sourceTree = "SOURCE_ROOT"; }; - 3EC800323255128D69539BAE = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_EdgeTable.cpp"; path = "../../src/gui/graphics/contexts/juce_EdgeTable.cpp"; sourceTree = "SOURCE_ROOT"; }; - BD52C1CCEAF6FEC311B9FDA1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_EdgeTable.h"; path = "../../src/gui/graphics/contexts/juce_EdgeTable.h"; sourceTree = "SOURCE_ROOT"; }; - B7251E779500BA77F5522CC7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FillType.cpp"; path = "../../src/gui/graphics/contexts/juce_FillType.cpp"; sourceTree = "SOURCE_ROOT"; }; - 1F0DB4B2825AF638183B50D6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FillType.h"; path = "../../src/gui/graphics/contexts/juce_FillType.h"; sourceTree = "SOURCE_ROOT"; }; - EF50EEDCAB08F842AB8DE6DA = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GraphicsContext.cpp"; path = "../../src/gui/graphics/contexts/juce_GraphicsContext.cpp"; sourceTree = "SOURCE_ROOT"; }; - 6320F9BAFA094B5C0C828C58 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_GraphicsContext.h"; path = "../../src/gui/graphics/contexts/juce_GraphicsContext.h"; sourceTree = "SOURCE_ROOT"; }; - 2E03ADF975A126C1F2F7B667 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Justification.cpp"; path = "../../src/gui/graphics/contexts/juce_Justification.cpp"; sourceTree = "SOURCE_ROOT"; }; - 36268DD78D00323D391ECAAB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Justification.h"; path = "../../src/gui/graphics/contexts/juce_Justification.h"; sourceTree = "SOURCE_ROOT"; }; - D6B4FED1F1D9FB82C6424438 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LowLevelGraphicsContext.h"; path = "../../src/gui/graphics/contexts/juce_LowLevelGraphicsContext.h"; sourceTree = "SOURCE_ROOT"; }; - ED3ED8389001D55FBDCF1087 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_LowLevelGraphicsPostScriptRenderer.cpp"; path = "../../src/gui/graphics/contexts/juce_LowLevelGraphicsPostScriptRenderer.cpp"; sourceTree = "SOURCE_ROOT"; }; - 5792CC17E9DFB966371CBEE1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LowLevelGraphicsPostScriptRenderer.h"; path = "../../src/gui/graphics/contexts/juce_LowLevelGraphicsPostScriptRenderer.h"; sourceTree = "SOURCE_ROOT"; }; - 835CC2A1E67E7B19E41F8FBD = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_LowLevelGraphicsSoftwareRenderer.cpp"; path = "../../src/gui/graphics/contexts/juce_LowLevelGraphicsSoftwareRenderer.cpp"; sourceTree = "SOURCE_ROOT"; }; - A7A8BE6B30C70701A10B5BD5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LowLevelGraphicsSoftwareRenderer.h"; path = "../../src/gui/graphics/contexts/juce_LowLevelGraphicsSoftwareRenderer.h"; sourceTree = "SOURCE_ROOT"; }; - FF052647D2EFA985D05C8E83 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RectanglePlacement.cpp"; path = "../../src/gui/graphics/contexts/juce_RectanglePlacement.cpp"; sourceTree = "SOURCE_ROOT"; }; - 2B90FAFBC65FB79A5D74E816 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RectanglePlacement.h"; path = "../../src/gui/graphics/contexts/juce_RectanglePlacement.h"; sourceTree = "SOURCE_ROOT"; }; - 504730C9B9F60192C2577979 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Drawable.cpp"; path = "../../src/gui/graphics/drawables/juce_Drawable.cpp"; sourceTree = "SOURCE_ROOT"; }; - B6A249ADEC5400011AA671D9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Drawable.h"; path = "../../src/gui/graphics/drawables/juce_Drawable.h"; sourceTree = "SOURCE_ROOT"; }; - 85B7BCACB40E02815844F71D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DrawableComposite.cpp"; path = "../../src/gui/graphics/drawables/juce_DrawableComposite.cpp"; sourceTree = "SOURCE_ROOT"; }; - 00B5FB5ABF4F13EC5D28E34D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DrawableComposite.h"; path = "../../src/gui/graphics/drawables/juce_DrawableComposite.h"; sourceTree = "SOURCE_ROOT"; }; - A54BC72C899A2AF82E1E37F8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DrawableImage.cpp"; path = "../../src/gui/graphics/drawables/juce_DrawableImage.cpp"; sourceTree = "SOURCE_ROOT"; }; - 849E645981CA10B8D5576462 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DrawableImage.h"; path = "../../src/gui/graphics/drawables/juce_DrawableImage.h"; sourceTree = "SOURCE_ROOT"; }; - 582DCC2F948F1DEA0D450B0D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DrawablePath.cpp"; path = "../../src/gui/graphics/drawables/juce_DrawablePath.cpp"; sourceTree = "SOURCE_ROOT"; }; - 17EBDF689C731DA257B243C9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DrawablePath.h"; path = "../../src/gui/graphics/drawables/juce_DrawablePath.h"; sourceTree = "SOURCE_ROOT"; }; - E0694CD7C814AA99E5A84799 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DrawableRectangle.cpp"; path = "../../src/gui/graphics/drawables/juce_DrawableRectangle.cpp"; sourceTree = "SOURCE_ROOT"; }; - 0FA9E378EBD7EE63EF72124F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DrawableRectangle.h"; path = "../../src/gui/graphics/drawables/juce_DrawableRectangle.h"; sourceTree = "SOURCE_ROOT"; }; - 62967D33232C5A86D88084B4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DrawableShape.cpp"; path = "../../src/gui/graphics/drawables/juce_DrawableShape.cpp"; sourceTree = "SOURCE_ROOT"; }; - 2FBD6F49349E7CC8FC2051EA = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DrawableShape.h"; path = "../../src/gui/graphics/drawables/juce_DrawableShape.h"; sourceTree = "SOURCE_ROOT"; }; - C17613C202D8E1C366F21D3C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DrawableText.cpp"; path = "../../src/gui/graphics/drawables/juce_DrawableText.cpp"; sourceTree = "SOURCE_ROOT"; }; - 1FA43B2E4244CD74B551DAD6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DrawableText.h"; path = "../../src/gui/graphics/drawables/juce_DrawableText.h"; sourceTree = "SOURCE_ROOT"; }; - 2BFC199D03DEEC329D6A7CB1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_SVGParser.cpp"; path = "../../src/gui/graphics/drawables/juce_SVGParser.cpp"; sourceTree = "SOURCE_ROOT"; }; - 32EA297812F1C88B42099501 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DropShadowEffect.cpp"; path = "../../src/gui/graphics/effects/juce_DropShadowEffect.cpp"; sourceTree = "SOURCE_ROOT"; }; - 85D4043F9E25047E07496DAC = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DropShadowEffect.h"; path = "../../src/gui/graphics/effects/juce_DropShadowEffect.h"; sourceTree = "SOURCE_ROOT"; }; - CB649686575473223C859482 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GlowEffect.cpp"; path = "../../src/gui/graphics/effects/juce_GlowEffect.cpp"; sourceTree = "SOURCE_ROOT"; }; - FD1FA4ABB4226372235643E4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_GlowEffect.h"; path = "../../src/gui/graphics/effects/juce_GlowEffect.h"; sourceTree = "SOURCE_ROOT"; }; - 18DB9BD10F140F132A3279C3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ImageEffectFilter.h"; path = "../../src/gui/graphics/effects/juce_ImageEffectFilter.h"; sourceTree = "SOURCE_ROOT"; }; - BA17B023595ECD8166A231D1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_CustomTypeface.cpp"; path = "../../src/gui/graphics/fonts/juce_CustomTypeface.cpp"; sourceTree = "SOURCE_ROOT"; }; - 6B4E90767D784246EC4E1944 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CustomTypeface.h"; path = "../../src/gui/graphics/fonts/juce_CustomTypeface.h"; sourceTree = "SOURCE_ROOT"; }; - 78068AA59A5DCFCCAAEA79D0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Font.cpp"; path = "../../src/gui/graphics/fonts/juce_Font.cpp"; sourceTree = "SOURCE_ROOT"; }; - 0401EA0E883CCAAAC6960A27 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Font.h"; path = "../../src/gui/graphics/fonts/juce_Font.h"; sourceTree = "SOURCE_ROOT"; }; - 61D06B694603F608CDA0703B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GlyphArrangement.cpp"; path = "../../src/gui/graphics/fonts/juce_GlyphArrangement.cpp"; sourceTree = "SOURCE_ROOT"; }; - 8117D400F45F1DF157634824 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_GlyphArrangement.h"; path = "../../src/gui/graphics/fonts/juce_GlyphArrangement.h"; sourceTree = "SOURCE_ROOT"; }; - 91CB423DBC5F3CBEDD9CF2EF = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TextLayout.cpp"; path = "../../src/gui/graphics/fonts/juce_TextLayout.cpp"; sourceTree = "SOURCE_ROOT"; }; - 4284BA7A26C7F6DEB00B4366 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TextLayout.h"; path = "../../src/gui/graphics/fonts/juce_TextLayout.h"; sourceTree = "SOURCE_ROOT"; }; - AF66A9951377E2D04C54CADD = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Typeface.cpp"; path = "../../src/gui/graphics/fonts/juce_Typeface.cpp"; sourceTree = "SOURCE_ROOT"; }; - 932024E0F2A2CC22B7657691 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Typeface.h"; path = "../../src/gui/graphics/fonts/juce_Typeface.h"; sourceTree = "SOURCE_ROOT"; }; - 2ED8CC539A9D9BE611F67A9A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AffineTransform.cpp"; path = "../../src/gui/graphics/geometry/juce_AffineTransform.cpp"; sourceTree = "SOURCE_ROOT"; }; - 5CD42FFF9F1A509D117BD0CB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AffineTransform.h"; path = "../../src/gui/graphics/geometry/juce_AffineTransform.h"; sourceTree = "SOURCE_ROOT"; }; - C18F342C087F69D141B3FAF5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BorderSize.h"; path = "../../src/gui/graphics/geometry/juce_BorderSize.h"; sourceTree = "SOURCE_ROOT"; }; - 4011751B9EFCA7B9345D7D7C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Line.h"; path = "../../src/gui/graphics/geometry/juce_Line.h"; sourceTree = "SOURCE_ROOT"; }; - 29BC53FEE9BC27F44534C909 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Path.cpp"; path = "../../src/gui/graphics/geometry/juce_Path.cpp"; sourceTree = "SOURCE_ROOT"; }; - 795E2BD2D39A3A6E36C26CBF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Path.h"; path = "../../src/gui/graphics/geometry/juce_Path.h"; sourceTree = "SOURCE_ROOT"; }; - 312F208B501E0D7764C6B613 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PathIterator.cpp"; path = "../../src/gui/graphics/geometry/juce_PathIterator.cpp"; sourceTree = "SOURCE_ROOT"; }; - ADB84942A96B6B9A0F5D7590 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PathIterator.h"; path = "../../src/gui/graphics/geometry/juce_PathIterator.h"; sourceTree = "SOURCE_ROOT"; }; - 9D3F1BAB1D48DDECB9F35916 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PathStrokeType.cpp"; path = "../../src/gui/graphics/geometry/juce_PathStrokeType.cpp"; sourceTree = "SOURCE_ROOT"; }; - C2700BB57B9EED7BFE975564 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PathStrokeType.h"; path = "../../src/gui/graphics/geometry/juce_PathStrokeType.h"; sourceTree = "SOURCE_ROOT"; }; - 132E3C38B4F0C6229EDF7000 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Point.h"; path = "../../src/gui/graphics/geometry/juce_Point.h"; sourceTree = "SOURCE_ROOT"; }; - F8C44FF03700F6140950F373 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Rectangle.h"; path = "../../src/gui/graphics/geometry/juce_Rectangle.h"; sourceTree = "SOURCE_ROOT"; }; - 1B170F70AF8AA0A39074F671 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RectangleList.cpp"; path = "../../src/gui/graphics/geometry/juce_RectangleList.cpp"; sourceTree = "SOURCE_ROOT"; }; - 8B7D7435287A20CB2D8E3704 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RectangleList.h"; path = "../../src/gui/graphics/geometry/juce_RectangleList.h"; sourceTree = "SOURCE_ROOT"; }; - 0F1C5770B363EF7DF64A876A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GIFLoader.cpp"; path = "../../src/gui/graphics/imaging/image_file_formats/juce_GIFLoader.cpp"; sourceTree = "SOURCE_ROOT"; }; - 6619D27E74F623B1E8CE8F71 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_JPEGLoader.cpp"; path = "../../src/gui/graphics/imaging/image_file_formats/juce_JPEGLoader.cpp"; sourceTree = "SOURCE_ROOT"; }; - EAF0F2EAB230F7539B91A7FB = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PNGLoader.cpp"; path = "../../src/gui/graphics/imaging/image_file_formats/juce_PNGLoader.cpp"; sourceTree = "SOURCE_ROOT"; }; - 0337723C9D607B82CF8AA682 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CameraDevice.h"; path = "../../src/gui/graphics/imaging/juce_CameraDevice.h"; sourceTree = "SOURCE_ROOT"; }; - 7904C2A3C52959748C46D54F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Image.cpp"; path = "../../src/gui/graphics/imaging/juce_Image.cpp"; sourceTree = "SOURCE_ROOT"; }; - D1BBA8F348C6DA2852A68221 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Image.h"; path = "../../src/gui/graphics/imaging/juce_Image.h"; sourceTree = "SOURCE_ROOT"; }; - 94D3EBE6E0D9AFE555226A88 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ImageCache.cpp"; path = "../../src/gui/graphics/imaging/juce_ImageCache.cpp"; sourceTree = "SOURCE_ROOT"; }; - 16CAB09D19F1A7379506310A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ImageCache.h"; path = "../../src/gui/graphics/imaging/juce_ImageCache.h"; sourceTree = "SOURCE_ROOT"; }; - 67F4F9E1F6B9B4D1C1A668E5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ImageConvolutionKernel.cpp"; path = "../../src/gui/graphics/imaging/juce_ImageConvolutionKernel.cpp"; sourceTree = "SOURCE_ROOT"; }; - 35A9146C03FC33B577817E9E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ImageConvolutionKernel.h"; path = "../../src/gui/graphics/imaging/juce_ImageConvolutionKernel.h"; sourceTree = "SOURCE_ROOT"; }; - 6E4DF7338364956EF42C4493 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ImageFileFormat.cpp"; path = "../../src/gui/graphics/imaging/juce_ImageFileFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; - BC2326E1A85025E700B1DE3D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ImageFileFormat.h"; path = "../../src/gui/graphics/imaging/juce_ImageFileFormat.h"; sourceTree = "SOURCE_ROOT"; }; - 3FD3FA96955DD648494E76A4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DirectoryIterator.cpp"; path = "../../src/io/files/juce_DirectoryIterator.cpp"; sourceTree = "SOURCE_ROOT"; }; - 974C3A59CC78DB4302B3552A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DirectoryIterator.h"; path = "../../src/io/files/juce_DirectoryIterator.h"; sourceTree = "SOURCE_ROOT"; }; - 692A95B19D9C32094A1E07B9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_File.cpp"; path = "../../src/io/files/juce_File.cpp"; sourceTree = "SOURCE_ROOT"; }; - DC51AF61DC4B345E5E4153E3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_File.h"; path = "../../src/io/files/juce_File.h"; sourceTree = "SOURCE_ROOT"; }; - 058702E8697667AEA38254C1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileInputStream.cpp"; path = "../../src/io/files/juce_FileInputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; - 090490A1C3B0002DFAD78C7B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileInputStream.h"; path = "../../src/io/files/juce_FileInputStream.h"; sourceTree = "SOURCE_ROOT"; }; - 6FFB38088C11BAE68368A3E7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileOutputStream.cpp"; path = "../../src/io/files/juce_FileOutputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; - 4EEF0B0BB4C3D1956B04122B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileOutputStream.h"; path = "../../src/io/files/juce_FileOutputStream.h"; sourceTree = "SOURCE_ROOT"; }; - 59B2FFF817679AEA84375E1B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileSearchPath.cpp"; path = "../../src/io/files/juce_FileSearchPath.cpp"; sourceTree = "SOURCE_ROOT"; }; - 49BF2B02A6D7B4438FC24839 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileSearchPath.h"; path = "../../src/io/files/juce_FileSearchPath.h"; sourceTree = "SOURCE_ROOT"; }; - 00B348FA35A7F691AEF84FBA = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MemoryMappedFile.h"; path = "../../src/io/files/juce_MemoryMappedFile.h"; sourceTree = "SOURCE_ROOT"; }; - D9B3C04F8EB4228DD59002E7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_NamedPipe.cpp"; path = "../../src/io/files/juce_NamedPipe.cpp"; sourceTree = "SOURCE_ROOT"; }; - 42DA88264F768BAACD0414A3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_NamedPipe.h"; path = "../../src/io/files/juce_NamedPipe.h"; sourceTree = "SOURCE_ROOT"; }; - 17C3AF03FF7AE88AE0C73311 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TemporaryFile.cpp"; path = "../../src/io/files/juce_TemporaryFile.cpp"; sourceTree = "SOURCE_ROOT"; }; - 75D6F1C676E178DEA8B86849 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TemporaryFile.h"; path = "../../src/io/files/juce_TemporaryFile.h"; sourceTree = "SOURCE_ROOT"; }; - 4035C867821E9B5887AA25FB = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ZipFile.cpp"; path = "../../src/io/files/juce_ZipFile.cpp"; sourceTree = "SOURCE_ROOT"; }; - 4D005659935C7DE99C2C01E2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ZipFile.h"; path = "../../src/io/files/juce_ZipFile.h"; sourceTree = "SOURCE_ROOT"; }; - EFA58F646B69B227AEF14140 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MACAddress.cpp"; path = "../../src/io/network/juce_MACAddress.cpp"; sourceTree = "SOURCE_ROOT"; }; - 7241B187AA9B0217838B6052 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MACAddress.h"; path = "../../src/io/network/juce_MACAddress.h"; sourceTree = "SOURCE_ROOT"; }; - 06B06C420341B005DFF951D2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Socket.cpp"; path = "../../src/io/network/juce_Socket.cpp"; sourceTree = "SOURCE_ROOT"; }; - 286206E754AC14DEAF88FD43 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Socket.h"; path = "../../src/io/network/juce_Socket.h"; sourceTree = "SOURCE_ROOT"; }; - AD7A1C2C82EE714EBDD52EFC = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_URL.cpp"; path = "../../src/io/network/juce_URL.cpp"; sourceTree = "SOURCE_ROOT"; }; - 21215569A0DCB6ACADD32401 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_URL.h"; path = "../../src/io/network/juce_URL.h"; sourceTree = "SOURCE_ROOT"; }; - D4211E697F43821CDBCE4F24 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_BufferedInputStream.cpp"; path = "../../src/io/streams/juce_BufferedInputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; - 7D593A29CAB138BD9AE950BA = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BufferedInputStream.h"; path = "../../src/io/streams/juce_BufferedInputStream.h"; sourceTree = "SOURCE_ROOT"; }; - BE5DCD603F7E21A1F66CDF33 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileInputSource.cpp"; path = "../../src/io/streams/juce_FileInputSource.cpp"; sourceTree = "SOURCE_ROOT"; }; - 304FD4FD5771F00C8EA46C10 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileInputSource.h"; path = "../../src/io/streams/juce_FileInputSource.h"; sourceTree = "SOURCE_ROOT"; }; - AE363A1FE2F403F7CE2FDF7F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GZIPCompressorOutputStream.cpp"; path = "../../src/io/streams/juce_GZIPCompressorOutputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; - 770082A38CF6071E5CFA563D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_GZIPCompressorOutputStream.h"; path = "../../src/io/streams/juce_GZIPCompressorOutputStream.h"; sourceTree = "SOURCE_ROOT"; }; - A10A63E2098A85B5CA9265B1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GZIPDecompressorInputStream.cpp"; path = "../../src/io/streams/juce_GZIPDecompressorInputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; - 8932FA0AA37E1E04CBA55B23 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_GZIPDecompressorInputStream.h"; path = "../../src/io/streams/juce_GZIPDecompressorInputStream.h"; sourceTree = "SOURCE_ROOT"; }; - AC183DCFAF18C9CEB88EEB1E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_InputSource.h"; path = "../../src/io/streams/juce_InputSource.h"; sourceTree = "SOURCE_ROOT"; }; - 3F60563DEC7941B88163A50E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_InputStream.cpp"; path = "../../src/io/streams/juce_InputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; - BB059F528EC362F86E4B4278 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_InputStream.h"; path = "../../src/io/streams/juce_InputStream.h"; sourceTree = "SOURCE_ROOT"; }; - 39C0783ED515AAA82F9CA37F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MemoryInputStream.cpp"; path = "../../src/io/streams/juce_MemoryInputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; - BD4388D88F2F02195AC73AD1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MemoryInputStream.h"; path = "../../src/io/streams/juce_MemoryInputStream.h"; sourceTree = "SOURCE_ROOT"; }; - B3F5E7A708350F72E7C77153 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MemoryOutputStream.cpp"; path = "../../src/io/streams/juce_MemoryOutputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; - DFE9A08C4AC8E1809018B5F4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MemoryOutputStream.h"; path = "../../src/io/streams/juce_MemoryOutputStream.h"; sourceTree = "SOURCE_ROOT"; }; - BBE79494A818EF83F52A4C7B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OutputStream.cpp"; path = "../../src/io/streams/juce_OutputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; - 5F27172FD963C1A748AA625A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OutputStream.h"; path = "../../src/io/streams/juce_OutputStream.h"; sourceTree = "SOURCE_ROOT"; }; - AE5A7EC70F288E7EA682081D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_SubregionStream.cpp"; path = "../../src/io/streams/juce_SubregionStream.cpp"; sourceTree = "SOURCE_ROOT"; }; - 6F7CA1B3AD09C76271FED3D6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SubregionStream.h"; path = "../../src/io/streams/juce_SubregionStream.h"; sourceTree = "SOURCE_ROOT"; }; - 7A039686F4F852E26936CA53 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_BigInteger.cpp"; path = "../../src/maths/juce_BigInteger.cpp"; sourceTree = "SOURCE_ROOT"; }; - 161894D0D279595D88F470A6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BigInteger.h"; path = "../../src/maths/juce_BigInteger.h"; sourceTree = "SOURCE_ROOT"; }; - 868E43A4BB7015579789E4F8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Expression.cpp"; path = "../../src/maths/juce_Expression.cpp"; sourceTree = "SOURCE_ROOT"; }; - 8E0874D93125C2DC34255EDB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Expression.h"; path = "../../src/maths/juce_Expression.h"; sourceTree = "SOURCE_ROOT"; }; - 7C2A4084A267F57F2E27F3F7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MathsFunctions.h"; path = "../../src/maths/juce_MathsFunctions.h"; sourceTree = "SOURCE_ROOT"; }; - D99C977ACCD09262F06F6624 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Random.cpp"; path = "../../src/maths/juce_Random.cpp"; sourceTree = "SOURCE_ROOT"; }; - A978BD4031CAE24FB0FE26E1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Random.h"; path = "../../src/maths/juce_Random.h"; sourceTree = "SOURCE_ROOT"; }; - 1A656E62C071C54D28343AC2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Range.h"; path = "../../src/maths/juce_Range.h"; sourceTree = "SOURCE_ROOT"; }; - 252632F3F97DF57C0781BEAD = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Atomic.h"; path = "../../src/memory/juce_Atomic.h"; sourceTree = "SOURCE_ROOT"; }; - 8FB80383DF3BAD7227DF465A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ByteOrder.h"; path = "../../src/memory/juce_ByteOrder.h"; sourceTree = "SOURCE_ROOT"; }; - FE76B46873DE20DFDC5A94BE = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_HeapBlock.h"; path = "../../src/memory/juce_HeapBlock.h"; sourceTree = "SOURCE_ROOT"; }; - 28C4C81039B42A399F5B7320 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LeakedObjectDetector.h"; path = "../../src/memory/juce_LeakedObjectDetector.h"; sourceTree = "SOURCE_ROOT"; }; - 341631A7E86BF1C0E49093C6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Memory.h"; path = "../../src/memory/juce_Memory.h"; sourceTree = "SOURCE_ROOT"; }; - AD655AA04981173716022D8D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MemoryBlock.cpp"; path = "../../src/memory/juce_MemoryBlock.cpp"; sourceTree = "SOURCE_ROOT"; }; - F1D085B5F12E814BF1D5C395 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MemoryBlock.h"; path = "../../src/memory/juce_MemoryBlock.h"; sourceTree = "SOURCE_ROOT"; }; - 58654C2630387C4A336A5BFB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OptionalScopedPointer.h"; path = "../../src/memory/juce_OptionalScopedPointer.h"; sourceTree = "SOURCE_ROOT"; }; - 524A70C9F23954F8F2A3F99B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ReferenceCountedObject.h"; path = "../../src/memory/juce_ReferenceCountedObject.h"; sourceTree = "SOURCE_ROOT"; }; - E05812E3CC31875A202D6B30 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ScopedPointer.h"; path = "../../src/memory/juce_ScopedPointer.h"; sourceTree = "SOURCE_ROOT"; }; - 224C989BF83B6EA867814BFF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_WeakReference.h"; path = "../../src/memory/juce_WeakReference.h"; sourceTree = "SOURCE_ROOT"; }; - 213F0A7BF38AF6AB34414A45 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiDataConcatenator.h"; path = "../../src/native/common/juce_MidiDataConcatenator.h"; sourceTree = "SOURCE_ROOT"; }; - 21B2342B75097AB93CFF7E97 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_posix_NamedPipe.cpp"; path = "../../src/native/common/juce_posix_NamedPipe.cpp"; sourceTree = "SOURCE_ROOT"; }; - 2C48BB1A286C6A63174E5798 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_posix_SharedCode.h"; path = "../../src/native/common/juce_posix_SharedCode.h"; sourceTree = "SOURCE_ROOT"; }; - 7A51D8B81F390A4CABF25C73 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Audio.cpp"; path = "../../src/native/linux/juce_linux_Audio.cpp"; sourceTree = "SOURCE_ROOT"; }; - 76DB94CC776536F5D05B9445 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_AudioCDReader.cpp"; path = "../../src/native/linux/juce_linux_AudioCDReader.cpp"; sourceTree = "SOURCE_ROOT"; }; - AA698DD5A82F91CF84A29666 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Clipboard.cpp"; path = "../../src/native/linux/juce_linux_Clipboard.cpp"; sourceTree = "SOURCE_ROOT"; }; - FABA493FEE07E6373DD8EB41 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_FileChooser.cpp"; path = "../../src/native/linux/juce_linux_FileChooser.cpp"; sourceTree = "SOURCE_ROOT"; }; - 595EBA8A689DA899986314D8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Files.cpp"; path = "../../src/native/linux/juce_linux_Files.cpp"; sourceTree = "SOURCE_ROOT"; }; - EACFC12E665283EB7926E9EC = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Fonts.cpp"; path = "../../src/native/linux/juce_linux_Fonts.cpp"; sourceTree = "SOURCE_ROOT"; }; - BAE5CE629DF9D286293E616F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_JackAudio.cpp"; path = "../../src/native/linux/juce_linux_JackAudio.cpp"; sourceTree = "SOURCE_ROOT"; }; - D4C499CB25F043FE667BC5E1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Messaging.cpp"; path = "../../src/native/linux/juce_linux_Messaging.cpp"; sourceTree = "SOURCE_ROOT"; }; - 4366712140FBEBEDBCBDCE9B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Midi.cpp"; path = "../../src/native/linux/juce_linux_Midi.cpp"; sourceTree = "SOURCE_ROOT"; }; - E0A2C24581917DD090186333 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_NativeCode.cpp"; path = "../../src/native/linux/juce_linux_NativeCode.cpp"; sourceTree = "SOURCE_ROOT"; }; - E61B485B10F8D4A3986953CD = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_linux_NativeIncludes.h"; path = "../../src/native/linux/juce_linux_NativeIncludes.h"; sourceTree = "SOURCE_ROOT"; }; - 3F3D429025A92B6F0FB6F8EF = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Network.cpp"; path = "../../src/native/linux/juce_linux_Network.cpp"; sourceTree = "SOURCE_ROOT"; }; - 275F2210628D9E9968B1B258 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_OpenGLComponent.cpp"; path = "../../src/native/linux/juce_linux_OpenGLComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - 5DEA687D261C59CBABB782E9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_SystemStats.cpp"; path = "../../src/native/linux/juce_linux_SystemStats.cpp"; sourceTree = "SOURCE_ROOT"; }; - 5593DEC14D551C38CCB50D70 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Threads.cpp"; path = "../../src/native/linux/juce_linux_Threads.cpp"; sourceTree = "SOURCE_ROOT"; }; - B8E47498C7C6D5ECF41F0EAB = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_WebBrowserComponent.cpp"; path = "../../src/native/linux/juce_linux_WebBrowserComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - 9DC2C10B16A645EEB82220D8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Windowing.cpp"; path = "../../src/native/linux/juce_linux_Windowing.cpp"; sourceTree = "SOURCE_ROOT"; }; - EE5F18DF1DED7617C4A41FF3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ios_Audio.cpp"; path = "../../src/native/mac/juce_ios_Audio.cpp"; sourceTree = "SOURCE_ROOT"; }; - B2BCE9DDC8F0F54CA3D913E7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_ios_MessageManager.mm"; path = "../../src/native/mac/juce_ios_MessageManager.mm"; sourceTree = "SOURCE_ROOT"; }; - 5249EFBE3B22E6FC1A7B6D42 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_ios_UIViewComponentPeer.mm"; path = "../../src/native/mac/juce_ios_UIViewComponentPeer.mm"; sourceTree = "SOURCE_ROOT"; }; - A257B76FCE9D594EAD41414C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_ios_Windowing.mm"; path = "../../src/native/mac/juce_ios_Windowing.mm"; sourceTree = "SOURCE_ROOT"; }; - 8280AA34B23B4D366711A9E7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_AppleRemote.mm"; path = "../../src/native/mac/juce_mac_AppleRemote.mm"; sourceTree = "SOURCE_ROOT"; }; - C9561A66310DAD5EEB4A9462 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_AudioCDBurner.mm"; path = "../../src/native/mac/juce_mac_AudioCDBurner.mm"; sourceTree = "SOURCE_ROOT"; }; - B62991F8AEE7327BA8A5070F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_AudioCDReader.mm"; path = "../../src/native/mac/juce_mac_AudioCDReader.mm"; sourceTree = "SOURCE_ROOT"; }; - 013F753639A6350C8DC602AD = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_CameraDevice.mm"; path = "../../src/native/mac/juce_mac_CameraDevice.mm"; sourceTree = "SOURCE_ROOT"; }; - 6B46AB1931E43DAFB278D23D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_mac_CarbonViewWrapperComponent.h"; path = "../../src/native/mac/juce_mac_CarbonViewWrapperComponent.h"; sourceTree = "SOURCE_ROOT"; }; - 72524FE185FF48DC1F954341 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_mac_CoreAudio.cpp"; path = "../../src/native/mac/juce_mac_CoreAudio.cpp"; sourceTree = "SOURCE_ROOT"; }; - BF5307F364AC9250D8625168 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_CoreGraphicsContext.mm"; path = "../../src/native/mac/juce_mac_CoreGraphicsContext.mm"; sourceTree = "SOURCE_ROOT"; }; - AA4823F2F2A78C43D7A039D0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_mac_CoreMidi.cpp"; path = "../../src/native/mac/juce_mac_CoreMidi.cpp"; sourceTree = "SOURCE_ROOT"; }; - 87A5A064CC3CD55BA5D7617D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_FileChooser.mm"; path = "../../src/native/mac/juce_mac_FileChooser.mm"; sourceTree = "SOURCE_ROOT"; }; - 641638A0466CEC1BDEAFB476 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_Files.mm"; path = "../../src/native/mac/juce_mac_Files.mm"; sourceTree = "SOURCE_ROOT"; }; - 7DB37383434F45D8A7B674C3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_Fonts.mm"; path = "../../src/native/mac/juce_mac_Fonts.mm"; sourceTree = "SOURCE_ROOT"; }; - CB16B2438EDCC10C499645E6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_MainMenu.mm"; path = "../../src/native/mac/juce_mac_MainMenu.mm"; sourceTree = "SOURCE_ROOT"; }; - BEB35C6173793C1CB7AB6311 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_MessageManager.mm"; path = "../../src/native/mac/juce_mac_MessageManager.mm"; sourceTree = "SOURCE_ROOT"; }; - BA58B49B820A47F6F55CDACB = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_MouseCursor.mm"; path = "../../src/native/mac/juce_mac_MouseCursor.mm"; sourceTree = "SOURCE_ROOT"; }; - 930E58E13FC92BF70AC20EEF = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_NativeCode.mm"; path = "../../src/native/mac/juce_mac_NativeCode.mm"; sourceTree = "SOURCE_ROOT"; }; - 2F1812B26076D9CC1495D452 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_mac_NativeIncludes.h"; path = "../../src/native/mac/juce_mac_NativeIncludes.h"; sourceTree = "SOURCE_ROOT"; }; - 9113CDD122D2790E147A8CF5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_Network.mm"; path = "../../src/native/mac/juce_mac_Network.mm"; sourceTree = "SOURCE_ROOT"; }; - EE56999A85AF18015C540183 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_NSViewComponent.mm"; path = "../../src/native/mac/juce_mac_NSViewComponent.mm"; sourceTree = "SOURCE_ROOT"; }; - 189F69E0B926C73B654D6951 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_NSViewComponentPeer.mm"; path = "../../src/native/mac/juce_mac_NSViewComponentPeer.mm"; sourceTree = "SOURCE_ROOT"; }; - B9E16F4636FF8C0A1FC8BEFB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_mac_ObjCSuffix.h"; path = "../../src/native/mac/juce_mac_ObjCSuffix.h"; sourceTree = "SOURCE_ROOT"; }; - AE9A7A0775FA806126A74E16 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_OpenGLComponent.mm"; path = "../../src/native/mac/juce_mac_OpenGLComponent.mm"; sourceTree = "SOURCE_ROOT"; }; - 4F5D1AA83981FBCD33CE234F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_QuickTimeMovieComponent.mm"; path = "../../src/native/mac/juce_mac_QuickTimeMovieComponent.mm"; sourceTree = "SOURCE_ROOT"; }; - E6A7BFB0FCD17A9B133CDFA4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_Strings.mm"; path = "../../src/native/mac/juce_mac_Strings.mm"; sourceTree = "SOURCE_ROOT"; }; - FE6E3F911679B0D7547577A3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_SystemStats.mm"; path = "../../src/native/mac/juce_mac_SystemStats.mm"; sourceTree = "SOURCE_ROOT"; }; - 8BCE60CBC91DBAAB089958A1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_Threads.mm"; path = "../../src/native/mac/juce_mac_Threads.mm"; sourceTree = "SOURCE_ROOT"; }; - 3F11593DC3A168A52FCC2DD9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_WebBrowserComponent.mm"; path = "../../src/native/mac/juce_mac_WebBrowserComponent.mm"; sourceTree = "SOURCE_ROOT"; }; - FC2C82760E717788B5A6E691 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_Windowing.mm"; path = "../../src/native/mac/juce_mac_Windowing.mm"; sourceTree = "SOURCE_ROOT"; }; - AB0F3F5A622CBB251F64945A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_osx_MessageQueue.h"; path = "../../src/native/mac/juce_osx_MessageQueue.h"; sourceTree = "SOURCE_ROOT"; }; - AD495FA1991295C722B46843 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_osx_ObjCHelpers.h"; path = "../../src/native/mac/juce_osx_ObjCHelpers.h"; sourceTree = "SOURCE_ROOT"; }; - 42059626955C547DA6AD3196 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_ActiveXComponent.cpp"; path = "../../src/native/windows/juce_win32_ActiveXComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - 8F383A785B4876198C5B0194 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_ASIO.cpp"; path = "../../src/native/windows/juce_win32_ASIO.cpp"; sourceTree = "SOURCE_ROOT"; }; - F3B50EE3939E9F16D13C3C7C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_AudioCDReader.cpp"; path = "../../src/native/windows/juce_win32_AudioCDReader.cpp"; sourceTree = "SOURCE_ROOT"; }; - 9C4D1018ECC0BA07346453EF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_win32_AutoLinkLibraries.h"; path = "../../src/native/windows/juce_win32_AutoLinkLibraries.h"; sourceTree = "SOURCE_ROOT"; }; - 3A37CD82212075940421CE4F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_CameraDevice.cpp"; path = "../../src/native/windows/juce_win32_CameraDevice.cpp"; sourceTree = "SOURCE_ROOT"; }; - B296F736C0CD6AC15BE6424B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_win32_ComSmartPtr.h"; path = "../../src/native/windows/juce_win32_ComSmartPtr.h"; sourceTree = "SOURCE_ROOT"; }; - 7F3EF672D07ECE3E13AAF267 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Direct2DGraphicsContext.cpp"; path = "../../src/native/windows/juce_win32_Direct2DGraphicsContext.cpp"; sourceTree = "SOURCE_ROOT"; }; - 249959E338D7750E56A9F2F8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_DirectShowComponent.cpp"; path = "../../src/native/windows/juce_win32_DirectShowComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - 58B70C726D186B4E770300BC = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_DirectSound.cpp"; path = "../../src/native/windows/juce_win32_DirectSound.cpp"; sourceTree = "SOURCE_ROOT"; }; - DCD09B6EF4A4A109DE01F152 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_FileChooser.cpp"; path = "../../src/native/windows/juce_win32_FileChooser.cpp"; sourceTree = "SOURCE_ROOT"; }; - 7527A5E8F4F39581159D3E5B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Files.cpp"; path = "../../src/native/windows/juce_win32_Files.cpp"; sourceTree = "SOURCE_ROOT"; }; - 1DBF9DAAD0690CB2CA4E9960 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Fonts.cpp"; path = "../../src/native/windows/juce_win32_Fonts.cpp"; sourceTree = "SOURCE_ROOT"; }; - E9B203E963EB1AB566061AC1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_win32_HiddenMessageWindow.h"; path = "../../src/native/windows/juce_win32_HiddenMessageWindow.h"; sourceTree = "SOURCE_ROOT"; }; - BA561E64C6400CFB1DE013F6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Messaging.cpp"; path = "../../src/native/windows/juce_win32_Messaging.cpp"; sourceTree = "SOURCE_ROOT"; }; - 061B492EABD6B1C995D581A8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Midi.cpp"; path = "../../src/native/windows/juce_win32_Midi.cpp"; sourceTree = "SOURCE_ROOT"; }; - 50159A5B7A552A6C1EB557F3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_NativeCode.cpp"; path = "../../src/native/windows/juce_win32_NativeCode.cpp"; sourceTree = "SOURCE_ROOT"; }; - E7625D7A06CBC11F40A56A70 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_win32_NativeIncludes.h"; path = "../../src/native/windows/juce_win32_NativeIncludes.h"; sourceTree = "SOURCE_ROOT"; }; - CDA5FCC51F6C1E84D7DC3274 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Network.cpp"; path = "../../src/native/windows/juce_win32_Network.cpp"; sourceTree = "SOURCE_ROOT"; }; - B14735381ADB00741166E330 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_OpenGLComponent.cpp"; path = "../../src/native/windows/juce_win32_OpenGLComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - 09AE0882D58BE1715219556A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_QuickTimeMovieComponent.cpp"; path = "../../src/native/windows/juce_win32_QuickTimeMovieComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - 0EB41C0AB478EE02D8C851F9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Registry.cpp"; path = "../../src/native/windows/juce_win32_Registry.cpp"; sourceTree = "SOURCE_ROOT"; }; - FBE07C5CC622A5D36BDAB9E1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_SystemStats.cpp"; path = "../../src/native/windows/juce_win32_SystemStats.cpp"; sourceTree = "SOURCE_ROOT"; }; - B07C853EB60D8D8691BC1B4B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Threads.cpp"; path = "../../src/native/windows/juce_win32_Threads.cpp"; sourceTree = "SOURCE_ROOT"; }; - 5D32C8856093B33438AEB758 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_WASAPI.cpp"; path = "../../src/native/windows/juce_win32_WASAPI.cpp"; sourceTree = "SOURCE_ROOT"; }; - 8758E6857070D7E5406FDE3F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_WebBrowserComponent.cpp"; path = "../../src/native/windows/juce_win32_WebBrowserComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - 8E8BE2F1C182E418BBA6903C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Windowing.cpp"; path = "../../src/native/windows/juce_win32_Windowing.cpp"; sourceTree = "SOURCE_ROOT"; }; - 03B9D3D9042E85BDD691325E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Audio.cpp"; path = "../../src/native/android/juce_android_Audio.cpp"; sourceTree = "SOURCE_ROOT"; }; - 13C661B79E1E9508512A6B21 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_CameraDevice.cpp"; path = "../../src/native/android/juce_android_CameraDevice.cpp"; sourceTree = "SOURCE_ROOT"; }; - F2F68E50F42BD0F124E89E2C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_FileChooser.cpp"; path = "../../src/native/android/juce_android_FileChooser.cpp"; sourceTree = "SOURCE_ROOT"; }; - 59C46E289F86C80D4341EAA3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Files.cpp"; path = "../../src/native/android/juce_android_Files.cpp"; sourceTree = "SOURCE_ROOT"; }; - FA82460758BDCB2DCCE1EAAA = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Fonts.cpp"; path = "../../src/native/android/juce_android_Fonts.cpp"; sourceTree = "SOURCE_ROOT"; }; - CE06EEED7426AA45C27B629C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_GraphicsContext.cpp"; path = "../../src/native/android/juce_android_GraphicsContext.cpp"; sourceTree = "SOURCE_ROOT"; }; - F439E6C4B2D2AF19645252C0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_android_JNIHelpers.h"; path = "../../src/native/android/juce_android_JNIHelpers.h"; sourceTree = "SOURCE_ROOT"; }; - 1D74C9567283836ECC70E48B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Messaging.cpp"; path = "../../src/native/android/juce_android_Messaging.cpp"; sourceTree = "SOURCE_ROOT"; }; - 40216CE846A54CE706131A23 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Midi.cpp"; path = "../../src/native/android/juce_android_Midi.cpp"; sourceTree = "SOURCE_ROOT"; }; - E646726910F110DC34DD1662 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Misc.cpp"; path = "../../src/native/android/juce_android_Misc.cpp"; sourceTree = "SOURCE_ROOT"; }; - 9AF9F1C0D766D4F894E4A7B0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_NativeCode.cpp"; path = "../../src/native/android/juce_android_NativeCode.cpp"; sourceTree = "SOURCE_ROOT"; }; - 902C32F471DA6C435E80372B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_android_NativeIncludes.h"; path = "../../src/native/android/juce_android_NativeIncludes.h"; sourceTree = "SOURCE_ROOT"; }; - A404CD721E2A0F0CAE9326C5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Network.cpp"; path = "../../src/native/android/juce_android_Network.cpp"; sourceTree = "SOURCE_ROOT"; }; - 32B7C3609BDA01AA09740139 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_OpenGLComponent.cpp"; path = "../../src/native/android/juce_android_OpenGLComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - CEF7210E311274F1DFAB6882 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_SystemStats.cpp"; path = "../../src/native/android/juce_android_SystemStats.cpp"; sourceTree = "SOURCE_ROOT"; }; - 755C440534C0EB494572B3F3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Threads.cpp"; path = "../../src/native/android/juce_android_Threads.cpp"; sourceTree = "SOURCE_ROOT"; }; - EE855319AF344A05C92580C7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_WebBrowserComponent.cpp"; path = "../../src/native/android/juce_android_WebBrowserComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - FCD02A40985242A8A6648311 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Windowing.cpp"; path = "../../src/native/android/juce_android_Windowing.cpp"; sourceTree = "SOURCE_ROOT"; }; - 76E2084D2148068F9138A816 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_CharacterFunctions.cpp"; path = "../../src/text/juce_CharacterFunctions.cpp"; sourceTree = "SOURCE_ROOT"; }; - 33F16EE4F38C9B76E7FAEF78 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CharacterFunctions.h"; path = "../../src/text/juce_CharacterFunctions.h"; sourceTree = "SOURCE_ROOT"; }; - 72F5ED2E8B945988C37EA9CF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CharPointer_ASCII.h"; path = "../../src/text/juce_CharPointer_ASCII.h"; sourceTree = "SOURCE_ROOT"; }; - 663746215E9BA6C761172B85 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CharPointer_UTF16.h"; path = "../../src/text/juce_CharPointer_UTF16.h"; sourceTree = "SOURCE_ROOT"; }; - C3FD9D93626F80A45F9B6DDE = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CharPointer_UTF32.h"; path = "../../src/text/juce_CharPointer_UTF32.h"; sourceTree = "SOURCE_ROOT"; }; - 4007410FACA2F865FD8EF769 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CharPointer_UTF8.h"; path = "../../src/text/juce_CharPointer_UTF8.h"; sourceTree = "SOURCE_ROOT"; }; - 8273A206FB309671284959DD = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Identifier.cpp"; path = "../../src/text/juce_Identifier.cpp"; sourceTree = "SOURCE_ROOT"; }; - BF888BC540B64D5C61E46A34 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Identifier.h"; path = "../../src/text/juce_Identifier.h"; sourceTree = "SOURCE_ROOT"; }; - 644FD6155385BC3AA270FB5D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_JSON.cpp"; path = "../../src/text/juce_JSON.cpp"; sourceTree = "SOURCE_ROOT"; }; - CB092FB152F43900272F8E43 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_JSON.h"; path = "../../src/text/juce_JSON.h"; sourceTree = "SOURCE_ROOT"; }; - 4A97C8D2FF6454DDD3AF4BE5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_LocalisedStrings.cpp"; path = "../../src/text/juce_LocalisedStrings.cpp"; sourceTree = "SOURCE_ROOT"; }; - 2AA21CDC91EA122266EBD780 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LocalisedStrings.h"; path = "../../src/text/juce_LocalisedStrings.h"; sourceTree = "SOURCE_ROOT"; }; - 35DA3E75DDB03BB35794289B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_NewLine.h"; path = "../../src/text/juce_NewLine.h"; sourceTree = "SOURCE_ROOT"; }; - B507B4A8712A54D7A8C03223 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_String.cpp"; path = "../../src/text/juce_String.cpp"; sourceTree = "SOURCE_ROOT"; }; - 1EE2A763E06AF4951024950F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_String.h"; path = "../../src/text/juce_String.h"; sourceTree = "SOURCE_ROOT"; }; - 23252E4C97AEFAE0C5EEAA77 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_StringArray.cpp"; path = "../../src/text/juce_StringArray.cpp"; sourceTree = "SOURCE_ROOT"; }; - D4FED84C92ADC4B2C41A4275 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_StringArray.h"; path = "../../src/text/juce_StringArray.h"; sourceTree = "SOURCE_ROOT"; }; - 81B36E7C56DF1A777AA04F71 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_StringPairArray.cpp"; path = "../../src/text/juce_StringPairArray.cpp"; sourceTree = "SOURCE_ROOT"; }; - E5458BE2F33DBBF5AF834BB6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_StringPairArray.h"; path = "../../src/text/juce_StringPairArray.h"; sourceTree = "SOURCE_ROOT"; }; - 0EC7DE81A516F4130AC59557 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_StringPool.cpp"; path = "../../src/text/juce_StringPool.cpp"; sourceTree = "SOURCE_ROOT"; }; - C972C24A7D2FC817362E1FD7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_StringPool.h"; path = "../../src/text/juce_StringPool.h"; sourceTree = "SOURCE_ROOT"; }; - 5715BC14D93D61D71206FCB2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_XmlDocument.cpp"; path = "../../src/text/juce_XmlDocument.cpp"; sourceTree = "SOURCE_ROOT"; }; - B4575FEE10C67D45C9532540 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_XmlDocument.h"; path = "../../src/text/juce_XmlDocument.h"; sourceTree = "SOURCE_ROOT"; }; - 95F21C2733BD5932372E4157 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_XmlElement.cpp"; path = "../../src/text/juce_XmlElement.cpp"; sourceTree = "SOURCE_ROOT"; }; - 4EF8C44FF03700F6140950F3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_XmlElement.h"; path = "../../src/text/juce_XmlElement.h"; sourceTree = "SOURCE_ROOT"; }; - 40282E23D43D86D122CA5C54 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CriticalSection.h"; path = "../../src/threads/juce_CriticalSection.h"; sourceTree = "SOURCE_ROOT"; }; - EC240B4379FB70C8A8AC2855 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DynamicLibrary.h"; path = "../../src/threads/juce_DynamicLibrary.h"; sourceTree = "SOURCE_ROOT"; }; - 5508D42FCF7A1C8A8CD78BF0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_InterProcessLock.h"; path = "../../src/threads/juce_InterProcessLock.h"; sourceTree = "SOURCE_ROOT"; }; - 90E4999A78655A238AF42BC0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Process.h"; path = "../../src/threads/juce_Process.h"; sourceTree = "SOURCE_ROOT"; }; - 8E78623B2D21CFE68DEC0483 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ReadWriteLock.cpp"; path = "../../src/threads/juce_ReadWriteLock.cpp"; sourceTree = "SOURCE_ROOT"; }; - 9E622C38E4BD511B6ABBF7AA = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ReadWriteLock.h"; path = "../../src/threads/juce_ReadWriteLock.h"; sourceTree = "SOURCE_ROOT"; }; - 6734838B47EF0D9ACEE571CD = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ScopedLock.h"; path = "../../src/threads/juce_ScopedLock.h"; sourceTree = "SOURCE_ROOT"; }; - F00BDEF5CE2B281CBE2E89A2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ScopedReadLock.h"; path = "../../src/threads/juce_ScopedReadLock.h"; sourceTree = "SOURCE_ROOT"; }; - C5F20B02D7843F3C5ABEDFD4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ScopedWriteLock.h"; path = "../../src/threads/juce_ScopedWriteLock.h"; sourceTree = "SOURCE_ROOT"; }; - 1FD1C9A3D2DB64C825FDAC8B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SpinLock.h"; path = "../../src/threads/juce_SpinLock.h"; sourceTree = "SOURCE_ROOT"; }; - 4D60F7F748CF6702D1E45960 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Thread.cpp"; path = "../../src/threads/juce_Thread.cpp"; sourceTree = "SOURCE_ROOT"; }; - EFE26D4E1E2B92828DBA3A99 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Thread.h"; path = "../../src/threads/juce_Thread.h"; sourceTree = "SOURCE_ROOT"; }; - EF06213027EA3F7C54EE0F18 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ThreadPool.cpp"; path = "../../src/threads/juce_ThreadPool.cpp"; sourceTree = "SOURCE_ROOT"; }; - C25E5F90524645D684C674CB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ThreadPool.h"; path = "../../src/threads/juce_ThreadPool.h"; sourceTree = "SOURCE_ROOT"; }; - 60F21CB42270ACE2241544A8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TimeSliceThread.cpp"; path = "../../src/threads/juce_TimeSliceThread.cpp"; sourceTree = "SOURCE_ROOT"; }; - ED84C92ADC4B2C41A4275F92 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TimeSliceThread.h"; path = "../../src/threads/juce_TimeSliceThread.h"; sourceTree = "SOURCE_ROOT"; }; - 3268C8DBAB23CF503BF30935 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_WaitableEvent.h"; path = "../../src/threads/juce_WaitableEvent.h"; sourceTree = "SOURCE_ROOT"; }; - B4435D42216365FA97651272 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DeletedAtShutdown.cpp"; path = "../../src/utilities/juce_DeletedAtShutdown.cpp"; sourceTree = "SOURCE_ROOT"; }; - CE216F2485CD5EFEA91554F5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DeletedAtShutdown.h"; path = "../../src/utilities/juce_DeletedAtShutdown.h"; sourceTree = "SOURCE_ROOT"; }; - 599F5C47BB9B5898E0E88CF3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileBasedDocument.cpp"; path = "../../src/utilities/juce_FileBasedDocument.cpp"; sourceTree = "SOURCE_ROOT"; }; - 9620E4769876FC01ECE885D1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileBasedDocument.h"; path = "../../src/utilities/juce_FileBasedDocument.h"; sourceTree = "SOURCE_ROOT"; }; - 4BE2727CCD2CD7603402C8FE = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PropertiesFile.cpp"; path = "../../src/utilities/juce_PropertiesFile.cpp"; sourceTree = "SOURCE_ROOT"; }; - 7FDACEA80794451691A12703 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PropertiesFile.h"; path = "../../src/utilities/juce_PropertiesFile.h"; sourceTree = "SOURCE_ROOT"; }; - A618FC3255ECE14EC9259E6B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RecentlyOpenedFilesList.cpp"; path = "../../src/utilities/juce_RecentlyOpenedFilesList.cpp"; sourceTree = "SOURCE_ROOT"; }; - A2D6317BEEC77A62E8F834AF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RecentlyOpenedFilesList.h"; path = "../../src/utilities/juce_RecentlyOpenedFilesList.h"; sourceTree = "SOURCE_ROOT"; }; - 7F1AC20BE8A18CA6BB7403EC = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SelectedItemSet.h"; path = "../../src/utilities/juce_SelectedItemSet.h"; sourceTree = "SOURCE_ROOT"; }; - FA833EFA9E93C7DBE6624676 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SystemClipboard.h"; path = "../../src/utilities/juce_SystemClipboard.h"; sourceTree = "SOURCE_ROOT"; }; - EECE464606AE845BFC4B941B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_UndoableAction.h"; path = "../../src/utilities/juce_UndoableAction.h"; sourceTree = "SOURCE_ROOT"; }; - A59A5DCFCCAAEA79D03C2B27 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_UndoManager.cpp"; path = "../../src/utilities/juce_UndoManager.cpp"; sourceTree = "SOURCE_ROOT"; }; - 3C9E6597968358B57374502C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_UndoManager.h"; path = "../../src/utilities/juce_UndoManager.h"; sourceTree = "SOURCE_ROOT"; }; - ADE5F12AA5AD969E2C7002B3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_UnitTest.cpp"; path = "../../src/utilities/juce_UnitTest.cpp"; sourceTree = "SOURCE_ROOT"; }; - 75700D13513346310CEAC30D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_UnitTest.h"; path = "../../src/utilities/juce_UnitTest.h"; sourceTree = "SOURCE_ROOT"; }; - AAC585C4648559DD713F28FE = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_WindowsRegistry.h"; path = "../../src/utilities/juce_WindowsRegistry.h"; sourceTree = "SOURCE_ROOT"; }; - 2FD5C998952BE08F8ED3F262 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = juce.h; path = ../../juce.h; sourceTree = "SOURCE_ROOT"; }; - 01778F26212AECCBF2452804 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Config.h"; path = "../../juce_Config.h"; sourceTree = "SOURCE_ROOT"; }; - D443FD24B52106986FC8A531 = { isa = PBXGroup; children = ( - 144F56FCF3DF9EC922765901, - F6A490BA93AC3558E9A6FBB0, - CB9766F7A9C612B326D808CB, - 36A407F2BE4A625184B5CCFD, - 4E74130693EE120D905818AC, - 21E1DBFAB3FB75875EA35280, - EDF52AB382E80530E8FED9A0, - 415BD77DF4B2F4760D138735, - 8422E662212FA2082644A942, - BA97FEDA576503A21D971F1E, - E03C84620DCB004172C09B28 ); name = application; sourceTree = ""; }; - 2038F3EDCC94040C77D7620C = { isa = PBXGroup; children = ( - 1AA8BE2D76E153874FB08197, - 05C5C546E12C6422D865D864, - 1F5A667524FB005D872340E1, - 0877D5750D6F21C5231687CA, - 1BBE03BB0D71FEEEA440682B, - 7D85530D76756C33795ECCE9, - 013E8938EE1C6B4F63016B55, - 93006D32B18174D9FE0A5E9E, - 41070806F82EC9C6D1C67689, - 9349E14552FEA0371553E808, - 27356F5E93CEA4D472D83D8E, - 2AD64F53E12B20011B7A0DB7, - 8BD38C2507C0F8E28930A4F8, - 59597FA0A88A08937801D198, - AE7F7F0D959C2E3CF5989C88, - 27C3C51DF2519B519B76E2EE, - 7B34E897026857C84399A09C, - CB32D4EE59D5CA9DB12F944D, - 3442FA257104DC3F43E7F870, - 203AC66FFB20EAD2E7A594BD, - C9F1015CA457A61082398E34, - E00781B15E47C9CB9E94869D, - 7C06BD13BF7E0097EB0A8D08, - DA868174D4D2059AC1BE7E71, - 25B1AC1A6767AAD9E9515A18, - 7CF036906034FABB44D2108F, - DB5CAB7BC2973ABFF0867BCB, - D5D2FD212300E7D49ED74823, - 87A18C425F53C2098B1D42FE ); name = "audio_file_formats"; sourceTree = ""; }; - A319A40925DF075E2C31C2FC = { isa = PBXGroup; children = ( - 7AE5295A472723B26537FAEC, - 51287E236C749092458BA2DD, - 4C3258A1978AF3D357D196C6, - FBB2EEF0E5EC5EB6F89E9066, - AE9C08108699C71A289462B7, - 74AD63909D3EE09D63256A76, - 67A8F408B1EC63407C9241B2, - 5D6E837F124C347B3C1CAE23, - E1EA83B7EF928DC88D069AEC, - 1511366CAD437989DAA30CF2, - EA630BFFF638BBBC8FDC0018, - D86718CE7E5DEF2071AC3D17, - 76BB7F75A7F9930ED5A0CDB6, - 9A8053936C35A19B9E98623A, - 9CB1126A9FBFF1D6D6469AF9, - C63D6EC0555C13C1B79A6AAD, - E2A56C23BF2BB466BB273E3E, - BE5DB55285441D501FED3C00, - 5403C2A4DEE7B9B3B34235F8, - 0F70C4D118AC7625B4C42CD4, - 3988438157D4B75177703F8A, - 6AC857F51FD805D7BD3EF712 ); name = "audio_sources"; sourceTree = ""; }; - BF8F3D00CE4E97468E8BBC55 = { isa = PBXGroup; children = ( - 6841D6AC927D02113F3AEBD4, - E668D9C7FF084E59405A2A9E, - C7DB1BB9AF7FE0A2AA38D767, - 95CA8EE24AFBB1F2F29A5394, - EAFD034BB1721BFBF9A3795E, - EFAFC937377A21E9AC0F9776 ); name = devices; sourceTree = ""; }; - 53C441C8EEF2860715CC6599 = { isa = PBXGroup; children = ( - 5DB9D903D24646B0C2356A5D, - EBA6B46F7B3C11CA3744A4D0, - A1D687AE613A8B61EB63923D, - 812620B53BE820D26A63B65D, - 11C1A96A35A2F03F8C34BD43, - E68EB4BC75216B5B56E3F937, - EE2259D9768027C2C001EEAD, - 2C55CE1674244DB199C3033F ); name = dsp; sourceTree = ""; }; - 99B60B012D5CCF0BD861011D = { isa = PBXGroup; children = ( - B457515938E7141D5E79B671, - 0604C2E17F0E0DFEFDA19F8D, - 891E0B1AD09C0EA44297E0F2, - EBACA038DBB50817BE80E8C5, - C376B06C58C5D3C972583BBB, - 0731C60911E6985F51325484, - 062F7ACF5282C5B2D4BF5EE1, - DF3833AF6E38E55218FDF23F, - C627F9E9EC160055D65D81CB, - 0D3A77572C7256CE4C115FD7, - A22A0F77C15B1E4A8F2EB42A, - 78D29BB5C76CCF7C21EC0DAF, - DD3886D45B5988B4DAC2D049, - 01712FF0A160032FA1DAA8C2, - 899BD7E18BE1EF7CDF53784C ); name = midi; sourceTree = ""; }; - 844109733F09B5915AF75797 = { isa = PBXGroup; children = ( - 7B88F6B8E3A10CEAD9B0EE88 ); name = AU; sourceTree = ""; }; - FAA6189E385BD13EFEFE2E08 = { isa = PBXGroup; children = ( - 1101E8CB676FDEEF0A89D921, - F222E5825D83E711C9F1B789, - CEAA2B84462EF0B5026EAB0A, - 9A3151864FB90A6A4BCCAE9B, - BCE37F0D994C0ADF2CCFF796, - F52ECCD6C02108A2D7F672F5, - 833C3F205F05BA4ADC883E53 ); name = RTAS; sourceTree = ""; }; - EBF4EE8E84A562DE2EBAE6BB = { isa = PBXGroup; children = ( - 69C4FF0DD888BA25477561C8, - 37E1FC756833849B8C7C1215 ); name = VST; sourceTree = ""; }; - 0F0D49D13522C94A0F37D4AB = { isa = PBXGroup; children = ( - 2741189DF800566462E24A14, - FAC43251D74E5140740BEF60 ); name = Standalone; sourceTree = ""; }; - 2805C9C796CD7D77C2D662BF = { isa = PBXGroup; children = ( - 844109733F09B5915AF75797, - FAA6189E385BD13EFEFE2E08, - EBF4EE8E84A562DE2EBAE6BB, - 0F0D49D13522C94A0F37D4AB, - 2E96F55074F4EB74171EE6B6, - 13F64389F0E25731A98E92CD, - 7CDC2FA849B7ED73A2638A11 ); name = "plugin_client"; sourceTree = ""; }; - B1F82C796B56FCD97D211D8E = { isa = PBXGroup; children = ( - D76BDCCF9E1A1F26A8F578F0, - 50FAF92038EBD0127900AAA1, - 2073E1A497363200233CD34E, - F800E47459B2FE9DEF56F312, - B4291F2CEEC78CFEDEFC360E, - FCBB1DC14311D099809B21F7, - 723EBD80931754F4DD77DD53, - 2EBF36FAAF019B6F811D1C84 ); name = formats; sourceTree = ""; }; - 7AA82894558E047D7D5111E1 = { isa = PBXGroup; children = ( - B1F82C796B56FCD97D211D8E, - 1C8211DFB558D740EF4B173A, - 28534632DF76A1EA837BD0D7, - DA4820727D6DDC75561A262C, - A6415104D1E3E5CE7031C0C1, - E5BA7B8913271E935A1DA487, - 3110B983ACE956D6A24F8C8C, - A3FE51C7DD706F536273AB0E, - B6E20AE45813C0CA9B1014DD, - 4AE3A448D79602BE793BB5AA, - AF47BC3796A74CC15A192E8B, - 3D170AC8FD8E403C54E08F9D, - 9C5C0BCB2A298160025B15FC, - 08C65C3EB60FE8BFA252E3EF ); name = "plugin_host"; sourceTree = ""; }; - 231431F8B23F01DC6ECD4214 = { isa = PBXGroup; children = ( - 4CF107951746567DB63880A3, - AB554593165FE8C8B40F4447, - 3F260C24341E58745AC5BE79, - BC2A50B0B01128E394E9DE9C, - EC0F8FAA7EACE0D275064D60, - D141C024A3F5A6748B0E9ED7, - 19C9509EC7DD00DA7443DEFC, - ABDE16ABC1784B0FD3887A8F, - 08EBC2152F45FB2B839FCCC1, - 350428D4D70AAB88B2B84790, - 096CF2243648F17E1BF5421B, - CAD3312170E5DBE8AA8348BA ); name = processors; sourceTree = ""; }; - DC641C77950A335A20FD4532 = { isa = PBXGroup; children = ( - ED5966B95F865C586A3CE08F, - 6C6C1C360138D9BD4B27588B, - 35668D8EEA19957C6C9AC83A, - 9E6C206F95245BCDE38FB2B5 ); name = synthesisers; sourceTree = ""; }; - F2B0E44A08E127FD31184241 = { isa = PBXGroup; children = ( - 2038F3EDCC94040C77D7620C, - A319A40925DF075E2C31C2FC, - BF8F3D00CE4E97468E8BBC55, - 53C441C8EEF2860715CC6599, - 99B60B012D5CCF0BD861011D, - 2805C9C796CD7D77C2D662BF, - 7AA82894558E047D7D5111E1, - 231431F8B23F01DC6ECD4214, - DC641C77950A335A20FD4532 ); name = audio; sourceTree = ""; }; - 1CC2889DB696E12FC34E3F50 = { isa = PBXGroup; children = ( - 4F22276689685D839BD252EA, - 9584B84F23A4251755D49213, - 839BE8047CF2F8EBE43ED34F, - EDF52FDF87ACD33FE933142C, - F77C9170829579FABA5679AD, - 34C402EF9ADCAD34FB657D43, - 7DA9AC75A4D9227C8FC4B2F7, - 2767E1D082874D301D5D5F43, - 9289A1E6B141F24C57FF0927, - 70E5409425A76782B6188B31, - BB4A73064B0FC74ECCA19116, - C1913C90ED7BE51E823887CD, - 9BD379D2F7995BFE0B3E5369, - C8F0F54CA3D913E7B8D559CF, - D7612CE51ED4F9D3F960F922, - F95BC2FA7861CFF968D661ED, - 2F5FD1DEFAE549553A8BE3B1, - 989E03031D341649B4A296F5, - 1809284DD05B56309D7EA24F, - 69F58BF234EDF6328F624E0A, - 5D27EE211D9BFF6A58C4DC42, - 7CABDD863B47D8ADC900A4D8, - 4DF9D333038A442870668D31, - A81B4FC81A75E21E5B96E506 ); name = containers; sourceTree = ""; }; - 1AF37A533ABDD889670F9349 = { isa = PBXGroup; children = ( - D66C00E06B06EAD3B5257DD6, - C8441B7B3E4CCD4A257B4BFE, - 92ACFFCCCD1C85A0F8C6F80F, - 4555F03DBD059EEDECEF9F85, - 63F44EC0485FCA050814967E, - DF6CAC67C0F2D379BDA03062, - 1159C6BB0D33EE8E1A96B083, - 8292AE37F99FCC1E5BF63A28, - CFAECB6551F48A1695DEC243, - B4137E4612C1D161894D0D27, - 0AD73B8EA0D60D9927B36624, - F51969AF328D2C7D52D7436D, - C25D6136DF9CE441D6EB4C42, - CA66415F6EAA172B83755954, - 18B170E96511BBA1019C66F8, - 45D14EF360BDA1F5692E583D, - 956A1C30D5FE98DBB154204D, - 8D2DE1F3CB15D003C90042E7, - 872020C1EC3997ED744BF1BD, - CEF91E0C9CBB3EBFF9500FDA, - 297B664E9AB86DFE7DCAFF22 ); name = core; sourceTree = ""; }; - 2B74AFA66B37B748487152F4 = { isa = PBXGroup; children = ( - E3C548295935D26121D5D823, - 7A4B0E6FD686BCF0B8CC771E, - EAFD8FAF365DFB32DC42D0E7, - 6E4345FEEB1DC732A16134A4, - E9E692847C14AD33CD5FB40B, - 22612DBDC6C689B605CC6B48, - 7AE9331938549244E27A5D0E, - 16335266AFB4D19F25410E1D, - 4CBD301A08E9C3762F861FC3, - 02CD7BA1750DE36237369F78 ); name = cryptography; sourceTree = ""; }; - 89F308FD85F378E278C98884 = { isa = PBXGroup; children = ( - 31D985CB8646B78460E9D5A7, - 09F7685D1EFF472ECB1F5EF1, - 4EF8BD4BF46C4BCB39F96609, - 5EB7BD94A754E88D076D777A, - 1617348BBF5D103619D76911, - 44DB44953945417F76199479, - D04B6E43A037F985434B2F5A, - B80F8CD026033ACCCE11A1A4, - 5F454A6B5A82ECE2396C5716, - B2D08C8EEE3E22026533D2EA, - AE68ECB6E063BD8D4984C0B3, - 4B935D7360C9F166C80A158D, - 843A7B398E9411F0AF28D65D, - 57DD8EEE88C0D366E0354478, - 80633D64E9EFA1433454669B, - 9CF077D3ED7B7B56F351AAF6, - 7A1219C6560BDBE2E170D2A9, - E594F70DC2F292FF1EF65CB6, - BE17B7279B4BF40E51C12F47, - E2D07ED5E1A4A460E0DEF59C, - 2EBDE3FF4894D72C310C9F84, - 1F2CFBF13ADCA05C0DC2D7D4, - C51E9973A6FAB635081B9FDC, - C818B558D6D5B62A80621281, - 32C0312A5D246D41AAD98A11 ); name = events; sourceTree = ""; }; - 2DB55F83F4310F0C4E4E03AA = { isa = PBXGroup; children = ( - 18EE6576A9ED098632CE5155, - EB182DC4124FEFFFC87D12C4, - 8B1C747E63EEF036AD9AF3D8, - ECA97019B42083AD879B5B97, - 1C3D15546065C1A9AA5AA0C6, - B2032A24364695450A5E6A76, - BA415BD77DF4B2F4760D1387, - B72C0FB8DDC0F1102DF42943, - 6930E651AEE97FD47E185EC9, - 96FD3A02BA915E460520A0B7, - E927E4A58A84B21AA6B38A44, - F2212B7F42E26C3DD86800F2, - 09AE2C7E2573204A7A35452B, - B394145555DCB9E0FAA5522C, - 9846D4523B3425BBB04107EE, - 455176F8EDBA7A9DCEAA1367, - F750738F398054AB38250780, - DFF08DC68372AEE17EAA9CC7 ); name = buttons; sourceTree = ""; }; - 17B11D96CDB313ED60D8CFE0 = { isa = PBXGroup; children = ( - A3CB18F915377AC3FFA2E5F4, - B28C2EBD0846A09DAEDDFF4E, - 04F48B09426293224576DA9A, - DF6B4E787E39CD446ED2EEEE, - C992FDA4396430392CFAD150, - 346CC505FAFEE9451040108D, - 3384A91143018ED9346E4118 ); name = "code_editor"; sourceTree = ""; }; - BCB2FFE7C2A4084A267F57F2 = { isa = PBXGroup; children = ( - ADC16C18C8237A7F8E35E37A, - D8EB3EA456D9FCC211CD1ED5, - 0D3FA24FF38399E0EDA80860, - CA3454A9B6F80A2F4735C37E, - 7330A9643F50DE8BEACDBB61, - C0CC0FA84A4F7AA76C1611CB, - 1BC6C010045A06BDB4C684F6, - 3FFCAECECC0D469A010F7AF1, - 71B6CE03D6DB07BB293C8206, - 1DB68310EA4D6180FF948AA0, - 3CE16163A43A6E67428385EE, - E698677EEC8E88CAFF542764, - 6BB68B37C7B0BB4DA8326647, - 1EA844F7CC5377A14B0FD21C, - 76E073B2A3F59A3ACD20CC87, - 8BA30F0AFF5EA0E1A0203ACB, - A4E66D702028A22D8157241C, - CB6BF5E15522D8A272032AE9, - 53EB02EEDF5E7971EAB9E795, - 82FEB35063C3559D2F46AA6F, - 37E48B8F8AD2BC448E5935C7, - A77096E86054F70AC0A3B69E, - 981BACFF7892B83828313D8E, - D317D4B5BA40A5754EE56F47, - 8400CA0D3C2AB7A60A7329FB, - BC209F6862D5923B8F9E3080, - B0D261D42091AAD1560A0D63 ); name = controls; sourceTree = ""; }; - 2FE3729520998304E4B05FBA = { isa = PBXGroup; children = ( - B60FE8BFA252E3EF2D60B77A, - 79ABAD7BB654030EF29B8B9C, - D3B56583D4F60069296DB959, - 3A4ABC7E24F155A8CAF027B3, - B1DEB4E0BBFE7E2D052165BD, - F9FEE6DAB2B2752AC13D7286, - 85F0A0454489E4AF1F80AC83, - 102BAE57AAA43A7685FCBD9A, - F631A108CB5015BFA2E25E00, - 730CAA344708954DE271072C, - 295793C7AA1A57DC4BBCBBC4, - D54308F25AEE3110A166F2BE, - 3AF50EADB5B2C973E0C8EE9F, - 9A9D8C524A070162517620E5, - CD6C610A843822A7FA53E9D7, - CA1B41922D8094982F967DBD, - E9E66775B2F13ACD0B751E69, - B689E250203DE38D6D4F39F9, - 29DFAA512171B967D687A945, - 0AB8288D92FDFA00F30FB8DE, - A418FC3BDDBF1CE9F2903490, - 0EAD906B617A1A17305CB9F4, - 949854EDE6B5B16CEFB6108F, - F39059E72B927A700010851B, - 8A67B45A2BA1D19D1AC43315, - ECDD0F8397F3EE4E7FA7ACCC ); name = filebrowser; sourceTree = ""; }; - 558A664D5D1ECEC607F4775D = { isa = PBXGroup; children = ( - 912C419859C9C56BC96AA6FB, - 717295136FD426125079F78C, - 5ABC6616473BA4791AA8101E, - F61C34EE417006881D0869F4, - 29A79478AE8567250972ED43, - FB080C47434A8FAB73B8F486, - 7F5A271EAB78C7CF8B2341DE, - 92EDE6EA48F94DC5A0BCB24A, - A00C6593BFBFA76043BC0C06, - 02982EB6A81020D3D421AED3, - F1A33029252D29A6ADF171B0, - 15C6FD019B274AA51B4E2D76, - B1E8FF009812F29C2620E6BB, - FAEEA3536AD17B2667A1BB94, - D64DD9F41E4598606855DFCF, - 7356F5E93CEA4D472D83D8E5 ); name = keyboard; sourceTree = ""; }; - D75AAB3AB61247E962C00692 = { isa = PBXGroup; children = ( - 921B616E2229AEB6390D2B57, - FE1072B5FB77E8FEE1BEBDFE, - 07191E1A9805FA6E6F253FF6, - 2EC173A08676F6E592A7B347, - 45E5EE9E0173683D721FABDA, - 2D3A362DD3833B9E70B10FD3, - F8FCCCE06D31FEF697FCD80D, - 44CDA79090B115C3B62A2168, - A6AD7357F905309D1B461EB7, - E9242E8425497D889C764C66, - FF046140CCF1EDB0DFF80178, - B6A223FB5B4A9388C83D6FC7, - A95F42C5CB0C2E5052B31568, - 600B2FDBBBE812784CB49A69, - A31221E2A50CCE9DF06B5F4B, - CB54AC3D311C44A1F3B463A5, - 3D8B0E86C98E2EE49AE868C8, - 238965266F88730956D776DB, - B116FEC4D544DB8E38CB571E, - 797C94BB7F42CBBAACCFFB87, - F1F65C9E7394E04E073A57A4, - F64E8284F142600B9F519B07, - 993C90B10202DA78FA31CC58, - 8C0FFF811E06D162050CAB14, - 079CFB5DEF6F2B71E2910A22, - D5F5282BE0F43A5E16824749, - 143F36BCDE7A65EBA33900ED, - 093E54DECB8191CA74D79176, - F2C653BA4552E6838DFA4F87, - C42D9251031A81B5CF2C843B, - D41423657626ACA672A9DED9, - 811149E18993F029165D330D ); name = layout; sourceTree = ""; }; - EAE72EDE682D52DF77747660 = { isa = PBXGroup; children = ( - FD004BDDCEDB7E324983F70C, - 7B991020107EC0D54965BCA2, - B92ACF027E63D1C788DEC893, - 3C739F61EE232C75546D4DCF ); name = lookandfeel; sourceTree = ""; }; - 870DE7235866DA3B81B683B8 = { isa = PBXGroup; children = ( - 218D7D73C086866E587FFD01, - BB93D3C283731C0B25B7AAAE, - 1DDE0A8E4C5857715D9B5FAE, - 502B3625329816EA6330465F, - 6AACD2FD239E39F87B666C6F, - A563BC883D801CF5956DC4BC ); name = menus; sourceTree = ""; }; - 4F37E36BA5E052B3BD4B87AD = { isa = PBXGroup; children = ( - 9E4B3BAB9BDB06B60D28DF48, - BCDD702ED33BADF3FC19384C, - 3D74B30C63465C32E26D8E33, - D4993649A93B73052C8045EF, - 31EE71EA61B4ED293481EB97, - A08313B5F112579D130373BF, - E1CA0B04EDE60771B81B9700, - 944BC51C440C167C5B2A23E3, - 136109B3076DDA7B2E01CF90, - 067D84F9291770240D1AB5B4, - 50C02B44D0CB18898F575B1E, - 441257DD380138C03568FCBD, - 07CF9AF337779EB486AC92BF, - 2886656DF7ACC9DDC888827F, - 0C28F27F9D1CE6CD65185760, - 89AA49DD2A63D80E90A56768 ); name = mouse; sourceTree = ""; }; - 362862B72D7FF7997C44CECF = { isa = PBXGroup; children = ( - 82DFF1BD3665DC32672FCCE8, - 5B6CD1833A98F9844B7E3FF4, - D39C0B853C3EBBBD11E7C71E, - 657546D70AB7B2709619E07A, - D31704DAB806B6AF3ED52DC7, - 574EC603B2B1189687851319, - 243EF1A31A779413BC2D5B98, - 72EFFDE39C7255D50F926944, - 36BB6DDF702EC9B3DAC851FF, - A3B6342C6207D452F6AD985C, - 9DA988F1D7CE29E0DFED7EF0, - C1A3232DDB617A20D9C26526, - 072D77C3834B1B3FB77F277B, - 749CA35420339A25BA4E500F ); name = positioning; sourceTree = ""; }; - 0F03F34FC3542EF0CF8B31E6 = { isa = PBXGroup; children = ( - 1C3FFBA02AE51EDD72A6250B, - B422688E380911F3C21E3F04, - C45E7E6B6E45DEFBF80940DD, - C1F662CED371C843E4EE03B2, - ECCBF2452804ECB2D5B4BC50, - C6B318D6930A05FF86AD97DA, - E2C948680009D1744CEDBC25, - 5B9E9460EAA932889DDC4873, - 0984A4BA00D6AAFB463657F4, - 02685CE4575D6E9B8CCC7738, - 3451124EC2809C9BB591DF93, - B568DEC2B352281BC63B33CD, - 84311C1F5A8ACC8DF4D6FF34, - 3641ABC17D67038746897FA7 ); name = properties; sourceTree = ""; }; - 5C03BF1C4CF3DEE1E0D6A3A1 = { isa = PBXGroup; children = ( - E748C93240CDD61473B0107F, - DED871B1C7458B15DE7C9234, - 26E787FFC68224BF8EB5A458, - 11F1658A055C45FE824FD2DB, - 4DFF179AFD87D34C7E23B1E5, - 4C3C3AFC3D97C1378B7D7435, - C25DFA2F2B673EB0146412BB, - 0A20E7E561633610A76A34AB, - CD9F817B7EF0DA080668A3A8, - 4BF7A01BCE61A5068CA13D8F, - 9C1D5CDA61FB51F657DA8B22, - 7DB8CFB77EA690ACF54C63B4, - 3C8C1AAF32DFECB89EB83271, - 127FC743FE67E6EEF2531BD5, - 4387C6496C7079FB0032B99D, - 1317F0BE5EC80371F744967B, - 826CC87E9E280F46B6D62B64, - A34C0E63D41CFF5E55FD1D9E, - 6BE989C709D2D1D017548447, - 529CB909220344AD55944372, - A9DB12F944D9DC336AD0A78B, - CC04F253CB70B20B774801A9, - D9847FECA6801E9A61007D50, - 740D1808DB934123F05A1598 ); name = special; sourceTree = ""; }; - 48D41BA310DED74E900A5AB0 = { isa = PBXGroup; children = ( - A5AAF4475138358F33D4904A, - 72C4FDDDB8602591DD4F7B3B, - 8AEF18EE9B12D4677F96B709, - 8F54431CD3A672B1EB8335BE, - 2FFDC7636EFC2D7F74590A31, - 12C66C90F3192AFFD6BCEDB6, - 929FEA5458430B7AE23BBB46, - C286C779DD52C29F86E3DBE9, - 090907E4FE95EE2B11C1A0E1, - 6E522DF13EC47755234A5D57, - 3FC6FC331B4E104D1DC223D6, - 2E4A5F7128313C23AD0356F7, - 207CDD87107EAC8ED17DD601, - 87E57C8F3448D615271CD9F6, - 7C06FF93D655B9987000ECA9, - D7772BC5E4E455AE2916A87D, - 2FC449D291A603E26E938F52, - 6C33842C52B61407CACCA858, - 6165F485E931EF9F69D2145F, - A24990B395323FBAC0BEFB5A, - C7C882D550E3B72FA5EFA88A ); name = windows; sourceTree = ""; }; - 92D807F41C69EA70B3D78B08 = { isa = PBXGroup; children = ( - D0D9267E200BD462361810F7, - 17A21B31FD41D00A4088FADF, - E13F33E386E1A0D5FC546521, - A0D6308567AAA50D1163D9D3, - 621B3A4B154182F69DDE2989, - A1F58C1A972425C2B43DD1B3, - 2FFF9AFE4BD9437CE096E52B, - 41C8C324F13ADA3423FC3B0F, - 2DB55F83F4310F0C4E4E03AA, - 17B11D96CDB313ED60D8CFE0, - BCB2FFE7C2A4084A267F57F2, - 2FE3729520998304E4B05FBA, - 558A664D5D1ECEC607F4775D, - D75AAB3AB61247E962C00692, - EAE72EDE682D52DF77747660, - 870DE7235866DA3B81B683B8, - 4F37E36BA5E052B3BD4B87AD, - 362862B72D7FF7997C44CECF, - 0F03F34FC3542EF0CF8B31E6, - 5C03BF1C4CF3DEE1E0D6A3A1, - 48D41BA310DED74E900A5AB0 ); name = components; sourceTree = ""; }; - 4FB94A8F4982BFC449BCDF15 = { isa = PBXGroup; children = ( - EF18D0073BE50E572ADD9A1C, - 8F6F9E1FD31E1A6268CFD3F9, - D36EFC4421056277BA87387E, - 3AE0BD116486BCE37F0D994C, - 41AF663E626B8F6D319B9966, - C913994AAA448C9F22ACF100, - 112017AA0A061CF080DBD504 ); name = colour; sourceTree = ""; }; - 5C291A35207CB6C58F653E05 = { isa = PBXGroup; children = ( - 3EC800323255128D69539BAE, - BD52C1CCEAF6FEC311B9FDA1, - B7251E779500BA77F5522CC7, - 1F0DB4B2825AF638183B50D6, - EF50EEDCAB08F842AB8DE6DA, - 6320F9BAFA094B5C0C828C58, - 2E03ADF975A126C1F2F7B667, - 36268DD78D00323D391ECAAB, - D6B4FED1F1D9FB82C6424438, - ED3ED8389001D55FBDCF1087, - 5792CC17E9DFB966371CBEE1, - 835CC2A1E67E7B19E41F8FBD, - A7A8BE6B30C70701A10B5BD5, - FF052647D2EFA985D05C8E83, - 2B90FAFBC65FB79A5D74E816 ); name = contexts; sourceTree = ""; }; - 097AEBBD16544F0BEEE32245 = { isa = PBXGroup; children = ( - 504730C9B9F60192C2577979, - B6A249ADEC5400011AA671D9, - 85B7BCACB40E02815844F71D, - 00B5FB5ABF4F13EC5D28E34D, - A54BC72C899A2AF82E1E37F8, - 849E645981CA10B8D5576462, - 582DCC2F948F1DEA0D450B0D, - 17EBDF689C731DA257B243C9, - E0694CD7C814AA99E5A84799, - 0FA9E378EBD7EE63EF72124F, - 62967D33232C5A86D88084B4, - 2FBD6F49349E7CC8FC2051EA, - C17613C202D8E1C366F21D3C, - 1FA43B2E4244CD74B551DAD6, - 2BFC199D03DEEC329D6A7CB1 ); name = drawables; sourceTree = ""; }; - 6D6492A7E3B70A5E76AFB49B = { isa = PBXGroup; children = ( - 32EA297812F1C88B42099501, - 85D4043F9E25047E07496DAC, - CB649686575473223C859482, - FD1FA4ABB4226372235643E4, - 18DB9BD10F140F132A3279C3 ); name = effects; sourceTree = ""; }; - 58FE42C578BFFD1F8F545B39 = { isa = PBXGroup; children = ( - BA17B023595ECD8166A231D1, - 6B4E90767D784246EC4E1944, - 78068AA59A5DCFCCAAEA79D0, - 0401EA0E883CCAAAC6960A27, - 61D06B694603F608CDA0703B, - 8117D400F45F1DF157634824, - 91CB423DBC5F3CBEDD9CF2EF, - 4284BA7A26C7F6DEB00B4366, - AF66A9951377E2D04C54CADD, - 932024E0F2A2CC22B7657691 ); name = fonts; sourceTree = ""; }; - BF4679D9201C5AAE6751536B = { isa = PBXGroup; children = ( - 2ED8CC539A9D9BE611F67A9A, - 5CD42FFF9F1A509D117BD0CB, - C18F342C087F69D141B3FAF5, - 4011751B9EFCA7B9345D7D7C, - 29BC53FEE9BC27F44534C909, - 795E2BD2D39A3A6E36C26CBF, - 312F208B501E0D7764C6B613, - ADB84942A96B6B9A0F5D7590, - 9D3F1BAB1D48DDECB9F35916, - C2700BB57B9EED7BFE975564, - 132E3C38B4F0C6229EDF7000, - F8C44FF03700F6140950F373, - 1B170F70AF8AA0A39074F671, - 8B7D7435287A20CB2D8E3704 ); name = geometry; sourceTree = ""; }; - D71FD838B3FD1536FCA839A4 = { isa = PBXGroup; children = ( - 0F1C5770B363EF7DF64A876A, - 6619D27E74F623B1E8CE8F71, - EAF0F2EAB230F7539B91A7FB ); name = "image_file_formats"; sourceTree = ""; }; - 36A6F90D0C87EA1D8FBE9EC0 = { isa = PBXGroup; children = ( - D71FD838B3FD1536FCA839A4, - 0337723C9D607B82CF8AA682, - 7904C2A3C52959748C46D54F, - D1BBA8F348C6DA2852A68221, - 94D3EBE6E0D9AFE555226A88, - 16CAB09D19F1A7379506310A, - 67F4F9E1F6B9B4D1C1A668E5, - 35A9146C03FC33B577817E9E, - 6E4DF7338364956EF42C4493, - BC2326E1A85025E700B1DE3D ); name = imaging; sourceTree = ""; }; - 1BC496671A99D62A223BB364 = { isa = PBXGroup; children = ( - 4FB94A8F4982BFC449BCDF15, - 5C291A35207CB6C58F653E05, - 097AEBBD16544F0BEEE32245, - 6D6492A7E3B70A5E76AFB49B, - 58FE42C578BFFD1F8F545B39, - BF4679D9201C5AAE6751536B, - 36A6F90D0C87EA1D8FBE9EC0 ); name = graphics; sourceTree = ""; }; - A11081920ACF526B1320CA42 = { isa = PBXGroup; children = ( - 92D807F41C69EA70B3D78B08, - 1BC496671A99D62A223BB364 ); name = gui; sourceTree = ""; }; - 3C4DE044AE46D5AE2388C827 = { isa = PBXGroup; children = ( - 3FD3FA96955DD648494E76A4, - 974C3A59CC78DB4302B3552A, - 692A95B19D9C32094A1E07B9, - DC51AF61DC4B345E5E4153E3, - 058702E8697667AEA38254C1, - 090490A1C3B0002DFAD78C7B, - 6FFB38088C11BAE68368A3E7, - 4EEF0B0BB4C3D1956B04122B, - 59B2FFF817679AEA84375E1B, - 49BF2B02A6D7B4438FC24839, - 00B348FA35A7F691AEF84FBA, - D9B3C04F8EB4228DD59002E7, - 42DA88264F768BAACD0414A3, - 17C3AF03FF7AE88AE0C73311, - 75D6F1C676E178DEA8B86849, - 4035C867821E9B5887AA25FB, - 4D005659935C7DE99C2C01E2 ); name = files; sourceTree = ""; }; - 13FBF71BD76A08C8971C6351 = { isa = PBXGroup; children = ( - EFA58F646B69B227AEF14140, - 7241B187AA9B0217838B6052, - 06B06C420341B005DFF951D2, - 286206E754AC14DEAF88FD43, - AD7A1C2C82EE714EBDD52EFC, - 21215569A0DCB6ACADD32401 ); name = network; sourceTree = ""; }; - 177636E4EEEBBB139F934897 = { isa = PBXGroup; children = ( - D4211E697F43821CDBCE4F24, - 7D593A29CAB138BD9AE950BA, - BE5DCD603F7E21A1F66CDF33, - 304FD4FD5771F00C8EA46C10, - AE363A1FE2F403F7CE2FDF7F, - 770082A38CF6071E5CFA563D, - A10A63E2098A85B5CA9265B1, - 8932FA0AA37E1E04CBA55B23, - AC183DCFAF18C9CEB88EEB1E, - 3F60563DEC7941B88163A50E, - BB059F528EC362F86E4B4278, - 39C0783ED515AAA82F9CA37F, - BD4388D88F2F02195AC73AD1, - B3F5E7A708350F72E7C77153, - DFE9A08C4AC8E1809018B5F4, - BBE79494A818EF83F52A4C7B, - 5F27172FD963C1A748AA625A, - AE5A7EC70F288E7EA682081D, - 6F7CA1B3AD09C76271FED3D6 ); name = streams; sourceTree = ""; }; - 0C54591C1E8594B59F4701FE = { isa = PBXGroup; children = ( - 3C4DE044AE46D5AE2388C827, - 13FBF71BD76A08C8971C6351, - 177636E4EEEBBB139F934897 ); name = io; sourceTree = ""; }; - F5A63AD86C7C0A9A2C33D74D = { isa = PBXGroup; children = ( - 7A039686F4F852E26936CA53, - 161894D0D279595D88F470A6, - 868E43A4BB7015579789E4F8, - 8E0874D93125C2DC34255EDB, - 7C2A4084A267F57F2E27F3F7, - D99C977ACCD09262F06F6624, - A978BD4031CAE24FB0FE26E1, - 1A656E62C071C54D28343AC2 ); name = maths; sourceTree = ""; }; - 9518033FC989E104DDB02E8A = { isa = PBXGroup; children = ( - 252632F3F97DF57C0781BEAD, - 8FB80383DF3BAD7227DF465A, - FE76B46873DE20DFDC5A94BE, - 28C4C81039B42A399F5B7320, - 341631A7E86BF1C0E49093C6, - AD655AA04981173716022D8D, - F1D085B5F12E814BF1D5C395, - 58654C2630387C4A336A5BFB, - 524A70C9F23954F8F2A3F99B, - E05812E3CC31875A202D6B30, - 224C989BF83B6EA867814BFF ); name = memory; sourceTree = ""; }; - DDB94A7300C3D1F2E9E51C47 = { isa = PBXGroup; children = ( - 213F0A7BF38AF6AB34414A45, - 21B2342B75097AB93CFF7E97, - 2C48BB1A286C6A63174E5798 ); name = common; sourceTree = ""; }; - 1004A23965A4DB0FCC441ED3 = { isa = PBXGroup; children = ( - 7A51D8B81F390A4CABF25C73, - 76DB94CC776536F5D05B9445, - AA698DD5A82F91CF84A29666, - FABA493FEE07E6373DD8EB41, - 595EBA8A689DA899986314D8, - EACFC12E665283EB7926E9EC, - BAE5CE629DF9D286293E616F, - D4C499CB25F043FE667BC5E1, - 4366712140FBEBEDBCBDCE9B, - E0A2C24581917DD090186333, - E61B485B10F8D4A3986953CD, - 3F3D429025A92B6F0FB6F8EF, - 275F2210628D9E9968B1B258, - 5DEA687D261C59CBABB782E9, - 5593DEC14D551C38CCB50D70, - B8E47498C7C6D5ECF41F0EAB, - 9DC2C10B16A645EEB82220D8 ); name = linux; sourceTree = ""; }; - 13513EE40AD6BAB30E26C88B = { isa = PBXGroup; children = ( - EE5F18DF1DED7617C4A41FF3, - B2BCE9DDC8F0F54CA3D913E7, - 5249EFBE3B22E6FC1A7B6D42, - A257B76FCE9D594EAD41414C, - 8280AA34B23B4D366711A9E7, - C9561A66310DAD5EEB4A9462, - B62991F8AEE7327BA8A5070F, - 013F753639A6350C8DC602AD, - 6B46AB1931E43DAFB278D23D, - 72524FE185FF48DC1F954341, - BF5307F364AC9250D8625168, - AA4823F2F2A78C43D7A039D0, - 87A5A064CC3CD55BA5D7617D, - 641638A0466CEC1BDEAFB476, - 7DB37383434F45D8A7B674C3, - CB16B2438EDCC10C499645E6, - BEB35C6173793C1CB7AB6311, - BA58B49B820A47F6F55CDACB, - 930E58E13FC92BF70AC20EEF, - 2F1812B26076D9CC1495D452, - 9113CDD122D2790E147A8CF5, - EE56999A85AF18015C540183, - 189F69E0B926C73B654D6951, - B9E16F4636FF8C0A1FC8BEFB, - AE9A7A0775FA806126A74E16, - 4F5D1AA83981FBCD33CE234F, - E6A7BFB0FCD17A9B133CDFA4, - FE6E3F911679B0D7547577A3, - 8BCE60CBC91DBAAB089958A1, - 3F11593DC3A168A52FCC2DD9, - FC2C82760E717788B5A6E691, - AB0F3F5A622CBB251F64945A, - AD495FA1991295C722B46843 ); name = mac; sourceTree = ""; }; - 64DE2D4534D79E74C40A0DEE = { isa = PBXGroup; children = ( - 42059626955C547DA6AD3196, - 8F383A785B4876198C5B0194, - F3B50EE3939E9F16D13C3C7C, - 9C4D1018ECC0BA07346453EF, - 3A37CD82212075940421CE4F, - B296F736C0CD6AC15BE6424B, - 7F3EF672D07ECE3E13AAF267, - 249959E338D7750E56A9F2F8, - 58B70C726D186B4E770300BC, - DCD09B6EF4A4A109DE01F152, - 7527A5E8F4F39581159D3E5B, - 1DBF9DAAD0690CB2CA4E9960, - E9B203E963EB1AB566061AC1, - BA561E64C6400CFB1DE013F6, - 061B492EABD6B1C995D581A8, - 50159A5B7A552A6C1EB557F3, - E7625D7A06CBC11F40A56A70, - CDA5FCC51F6C1E84D7DC3274, - B14735381ADB00741166E330, - 09AE0882D58BE1715219556A, - 0EB41C0AB478EE02D8C851F9, - FBE07C5CC622A5D36BDAB9E1, - B07C853EB60D8D8691BC1B4B, - 5D32C8856093B33438AEB758, - 8758E6857070D7E5406FDE3F, - 8E8BE2F1C182E418BBA6903C ); name = windows; sourceTree = ""; }; - FBE56423C0482E49EF317C85 = { isa = PBXGroup; children = ( - 03B9D3D9042E85BDD691325E, - 13C661B79E1E9508512A6B21, - F2F68E50F42BD0F124E89E2C, - 59C46E289F86C80D4341EAA3, - FA82460758BDCB2DCCE1EAAA, - CE06EEED7426AA45C27B629C, - F439E6C4B2D2AF19645252C0, - 1D74C9567283836ECC70E48B, - 40216CE846A54CE706131A23, - E646726910F110DC34DD1662, - 9AF9F1C0D766D4F894E4A7B0, - 902C32F471DA6C435E80372B, - A404CD721E2A0F0CAE9326C5, - 32B7C3609BDA01AA09740139, - CEF7210E311274F1DFAB6882, - 755C440534C0EB494572B3F3, - EE855319AF344A05C92580C7, - FCD02A40985242A8A6648311 ); name = android; sourceTree = ""; }; - B3E58752D519C56B78A95ACE = { isa = PBXGroup; children = ( - DDB94A7300C3D1F2E9E51C47, - 1004A23965A4DB0FCC441ED3, - 13513EE40AD6BAB30E26C88B, - 64DE2D4534D79E74C40A0DEE, - FBE56423C0482E49EF317C85 ); name = native; sourceTree = ""; }; - C6B52BCD0CB1B809D6DE555A = { isa = PBXGroup; children = ( - 76E2084D2148068F9138A816, - 33F16EE4F38C9B76E7FAEF78, - 72F5ED2E8B945988C37EA9CF, - 663746215E9BA6C761172B85, - C3FD9D93626F80A45F9B6DDE, - 4007410FACA2F865FD8EF769, - 8273A206FB309671284959DD, - BF888BC540B64D5C61E46A34, - 644FD6155385BC3AA270FB5D, - CB092FB152F43900272F8E43, - 4A97C8D2FF6454DDD3AF4BE5, - 2AA21CDC91EA122266EBD780, - 35DA3E75DDB03BB35794289B, - B507B4A8712A54D7A8C03223, - 1EE2A763E06AF4951024950F, - 23252E4C97AEFAE0C5EEAA77, - D4FED84C92ADC4B2C41A4275, - 81B36E7C56DF1A777AA04F71, - E5458BE2F33DBBF5AF834BB6, - 0EC7DE81A516F4130AC59557, - C972C24A7D2FC817362E1FD7, - 5715BC14D93D61D71206FCB2, - B4575FEE10C67D45C9532540, - 95F21C2733BD5932372E4157, - 4EF8C44FF03700F6140950F3 ); name = text; sourceTree = ""; }; - 723AC5B999F1EC8F4A101AAF = { isa = PBXGroup; children = ( - 40282E23D43D86D122CA5C54, - EC240B4379FB70C8A8AC2855, - 5508D42FCF7A1C8A8CD78BF0, - 90E4999A78655A238AF42BC0, - 8E78623B2D21CFE68DEC0483, - 9E622C38E4BD511B6ABBF7AA, - 6734838B47EF0D9ACEE571CD, - F00BDEF5CE2B281CBE2E89A2, - C5F20B02D7843F3C5ABEDFD4, - 1FD1C9A3D2DB64C825FDAC8B, - 4D60F7F748CF6702D1E45960, - EFE26D4E1E2B92828DBA3A99, - EF06213027EA3F7C54EE0F18, - C25E5F90524645D684C674CB, - 60F21CB42270ACE2241544A8, - ED84C92ADC4B2C41A4275F92, - 3268C8DBAB23CF503BF30935 ); name = threads; sourceTree = ""; }; - 281D6856FAC3B07634AD1C32 = { isa = PBXGroup; children = ( - B4435D42216365FA97651272, - CE216F2485CD5EFEA91554F5, - 599F5C47BB9B5898E0E88CF3, - 9620E4769876FC01ECE885D1, - 4BE2727CCD2CD7603402C8FE, - 7FDACEA80794451691A12703, - A618FC3255ECE14EC9259E6B, - A2D6317BEEC77A62E8F834AF, - 7F1AC20BE8A18CA6BB7403EC, - FA833EFA9E93C7DBE6624676, - EECE464606AE845BFC4B941B, - A59A5DCFCCAAEA79D03C2B27, - 3C9E6597968358B57374502C, - ADE5F12AA5AD969E2C7002B3, - 75700D13513346310CEAC30D, - AAC585C4648559DD713F28FE ); name = utilities; sourceTree = ""; }; - 992526B83B6AA618A4FAECEB = { isa = PBXGroup; children = ( - D443FD24B52106986FC8A531, - F2B0E44A08E127FD31184241, - 1CC2889DB696E12FC34E3F50, - 1AF37A533ABDD889670F9349, - 2B74AFA66B37B748487152F4, - 89F308FD85F378E278C98884, - A11081920ACF526B1320CA42, - 0C54591C1E8594B59F4701FE, - F5A63AD86C7C0A9A2C33D74D, - 9518033FC989E104DDB02E8A, - B3E58752D519C56B78A95ACE, - C6B52BCD0CB1B809D6DE555A, - 723AC5B999F1EC8F4A101AAF, - 281D6856FAC3B07634AD1C32, - 2FD5C998952BE08F8ED3F262, - 01778F26212AECCBF2452804 ); name = Juce; sourceTree = ""; }; - 1076A9F8D71BFFF9E9975FB6 = { isa = PBXGroup; children = ( ); name = Resources; sourceTree = ""; }; - 23256FCDBD84A2E259E40908 = { isa = PBXGroup; children = ( ); name = Frameworks; sourceTree = ""; }; - 3E3A3D491CB40D2943E95E64 = { isa = PBXGroup; children = ( - 389351359BA78C682E1931A6 ); name = Products; sourceTree = ""; }; - 25F381A264FFB3735F124DCC = { isa = PBXGroup; children = ( - 992526B83B6AA618A4FAECEB, - 1076A9F8D71BFFF9E9975FB6, - 23256FCDBD84A2E259E40908, - 3E3A3D491CB40D2943E95E64 ); name = Source; sourceTree = ""; }; - 0344046290267DB74DECDC05 = { isa = XCBuildConfiguration; buildSettings = { - PREBINDING = NO; - HEADER_SEARCH_PATHS = " $(inherited)"; - GCC_OPTIMIZATION_LEVEL = 0; - INFOPLIST_FILE = Info.plist; - DSTROOT = ../../bin; - SYMROOT = ../../bin; - CONFIGURATION_BUILD_DIR = "$(BUILD_DIR)"; - DEPLOYMENT_LOCATION = YES; - MACOSX_DEPLOYMENT_TARGET_ppc = 10.4; - ONLY_ACTIVE_ARCH = YES; - COPY_PHASE_STRIP = NO; - GCC_DYNAMIC_NO_PIC = NO; - GCC_ENABLE_FIX_AND_CONTINUE = NO; - GCC_PREPROCESSOR_DEFINITIONS = ( - "_DEBUG=1", - "DEBUG=1", - "JUCE_ObjCExtraSuffix=JSlRKlNBb5", - "JUCER_XCODE_MAC_F6D2F4CF=1"); }; name = Debug; }; - 9DE19CD5BB8E12A153385ADD = { isa = XCBuildConfiguration; buildSettings = { - PREBINDING = NO; - HEADER_SEARCH_PATHS = " $(inherited)"; - GCC_OPTIMIZATION_LEVEL = s; - INFOPLIST_FILE = Info.plist; - DSTROOT = ../../bin; - SYMROOT = ../../bin; - CONFIGURATION_BUILD_DIR = "$(BUILD_DIR)"; - DEPLOYMENT_LOCATION = YES; - MACOSX_DEPLOYMENT_TARGET_ppc = 10.4; - GCC_GENERATE_DEBUGGING_SYMBOLS = NO; - GCC_SYMBOLS_PRIVATE_EXTERN = YES; - GCC_PREPROCESSOR_DEFINITIONS = ( - "_NDEBUG=1", - "NDEBUG=1", - "JUCE_ObjCExtraSuffix=JSlRKlNBb5", - "JUCER_XCODE_MAC_F6D2F4CF=1"); }; name = Release; }; - 8E935B9E7F2982A06CD7EF99 = { isa = XCBuildConfiguration; buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - GCC_C_LANGUAGE_STANDARD = c99; - GCC_WARN_ABOUT_RETURN_TYPE = YES; - GCC_WARN_CHECK_SWITCH_STATEMENTS = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - GCC_WARN_MISSING_PARENTHESES = YES; - GCC_WARN_NON_VIRTUAL_DESTRUCTOR = YES; - GCC_WARN_TYPECHECK_CALLS_TO_PRINTF = YES; - WARNING_CFLAGS = -Wreorder; - GCC_MODEL_TUNING = G5; - GCC_INLINES_ARE_PRIVATE_EXTERN = NO; - GCC_SYMBOLS_PRIVATE_EXTERN = NO; - ZERO_LINK = NO; - DEBUG_INFORMATION_FORMAT = "dwarf"; - PRODUCT_NAME = "jucedebug"; }; name = Debug; }; - 71190EFA58D0942581B5F1AD = { isa = XCBuildConfiguration; buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - GCC_C_LANGUAGE_STANDARD = c99; - GCC_WARN_ABOUT_RETURN_TYPE = YES; - GCC_WARN_CHECK_SWITCH_STATEMENTS = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - GCC_WARN_MISSING_PARENTHESES = YES; - GCC_WARN_NON_VIRTUAL_DESTRUCTOR = YES; - GCC_WARN_TYPECHECK_CALLS_TO_PRINTF = YES; - WARNING_CFLAGS = -Wreorder; - GCC_MODEL_TUNING = G5; - GCC_INLINES_ARE_PRIVATE_EXTERN = NO; - GCC_SYMBOLS_PRIVATE_EXTERN = NO; - ZERO_LINK = NO; - DEBUG_INFORMATION_FORMAT = "dwarf"; - PRODUCT_NAME = "juce"; }; name = Release; }; - 3A1CB6B5ECF4A79CDE35CC66 = { isa = XCConfigurationList; buildConfigurations = ( - 8E935B9E7F2982A06CD7EF99, - 71190EFA58D0942581B5F1AD ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Debug; }; - D14EC3F0DC5861E37D35E15A = { isa = XCConfigurationList; buildConfigurations = ( - 0344046290267DB74DECDC05, - 9DE19CD5BB8E12A153385ADD ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Debug; }; - 8914D147048B9EE245989ACB = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 0F4BA87762766B98D5B58AD0, - 50933337E6C3CC5B82540F8B, - 04CB2DA89A71A183CEFEB7C0, - CD59C8E60146B04575CD61E6, - 76890501626BFFF310A94F15, - 46151070FA7D3426EC35280F, - 983FCD60625A60993546F850, - 416D6F00E88DC74879B4DF2B, - 9C709BC2F4F0EE60BF52FACA, - 992F46189ABF711A047186A4, - 5C312E6678456C8293633E0F, - FB21B7E6A7CE55D3C0E3C37E, - C1147D03F1F4D697CC30DD22, - C5CFF5508299C26380465290, - 0ACCAC5ABDE686B0CA42BFED, - 2171BD82DA3A6744260CDE58, - 3C22C15ACEEF0454171D231B, - 6D421F7B7EE3A149389653C2, - 4ED0A649C320BA53718501CE, - 5D3EC9BA6BA37694CB371ABB, - 4CF5FB501CB800D4485B08DB, - 3747D91BE3C6A2E641BB133D, - 4CFEE72495007A62F78C1B8E, - BF7E18A49525915A0E1928C5, - 6DC6DEEE8A1A6092830A79C8, - 2862E190ECA33D2CE1458B51, - 0791EB173E6A9F959E692AA2, - 3B64EF7F57EAC5C51460059D, - 16D537EB6D3BFAB3AAB54B11, - 0C22446F12486AD139A640CB, - 95CF50482DC7139FCB40EB1C, - D66B0BC466522CD4C5F1335B, - F20E960CAA933102A0F0225C, - 9CDC242CC037F1D00BFD6157, - FB0C4D926F00644C6435F0B4, - 3AA8CE85F8CEA9D4B8063E52, - DDD4E27CA174F32412F71093, - DC89A29962945F69CE38658B, - 78E7EF1759BA0AACCCE37533, - 573BF08B2CACCC317F3D7603, - 8376B6E3DB141DDF5EFF6327, - B579C891B16F4B219CD751B5, - 43FA6F0FD4DDEBA6427E730D, - BAB3164372A6C31A1A7DA58F, - D71FEEEA440682B04E024BB7, - B331EE2C23176373F2D52C1E, - 79D8E372BA77018BDA956D92, - 3688819F98EFF0AABDD79029, - 84F9FCAE9DF003DC6FC3C941, - E1046147432EB115A68D6C43, - 5CEE2D7E55DA99C1D310CDC2, - B154245927BCB4F87ABEAF17, - 52ADF1419B058963EE32B7C3, - 31D36C32211754E793B9FF81, - 2D46CF2B0350A442E08EC355, - D1407BB28C169F5E1CAC3CC7, - 07E6E11A658930554FF0C56A, - E8DFABC1603D55B97429A8E4, - 1F905F44E5FA23A2D5CCDA0A, - 4AB5E55BDF79028F82F83D8E, - 9D2D1BA65C27BDA1F7C44769, - 43B3119E2F1B559263AE956C, - 4A7952C0A4EEE13296EEED5E, - A230949FF8848D5E923F9083, - 11162E9812CFB0E738A7E2E6, - C682BEA7DB70FDC7C6BA2D6E, - 6A53DA58B55E2DE7241BF2C8, - 0FF71870483AC46D5B7AC5B0, - FA01B3EABA192AE041D4FE4D, - 43047D78351C2D7047F4F81E, - 5BF44F954E56B7C2DD15EAEA, - B14EB5F3829CA26DA906D5C0, - D75943C2812EA68CA74D9FDA, - 6DEA630BFFF638BBBC8FDC00, - 708060ED04ADF4E4FB8E2171, - 12E3CC31875A202D6B30F778, - CF51988743ED2CD823DFE0B5, - 4AAFC135B170CF02A40F0D51, - 659D9CD58B6914EB420E6AEC, - 55737E2F1817DE642AA7DA05, - 6D2C50B0A69855A7F8C062E7, - 70EE7A1273945B62B013DB43, - 9DF800566462E24A14246EAE, - 89F0DA39878F8A41E60B8C67, - 12E1174518BE1063E506CE5C, - EC0B67A801316FBA35A04356, - 86EDB250B9F5C8FF3045ADEB, - 8F7CC7DDA1E07A392CAD82A3, - 621B7B0B518E63E69122C13E, - 97982824572C18827047D92A, - 927E7250FCE62E838599DF83, - 9AE6891C35CE161CB1707B4B, - 06994A713C38F415C4E8A009, - 98F737B7459895BFCDC7965E, - 7033A0968B1C81A821CCC296, - 14E5A383C70731C60911E698, - 3A10CF09C41F8F55B7529E68, - 5482BFF6CAD3B6CDFB09FBA1, - FC3299637EACD8B5CBEC391F, - 5C245C1A77B96A1425323A1C, - 05DFD3AF416CA6FDDDDC4C74, - 78DEB64D3F38269C62EB1C7F, - DA5DA96B9D1A26342D9278B6, - CA49EF43B1478B146ADBBF62, - FE6F6A4946B7E4F6C9F44C4A, - 28254F1E6E686CF6F29AE56A, - 9EA7FEF4CAD2BF46DD3596DA, - D1400B3D9D07FA9E8BAA21CB, - 716823F3B5437A20FCADA50E, - 7CAB8DEBF6B93C845AEF11E5, - BBE24BE654237ACD381A97E4, - 6F38AFBC749040844076FD4F, - B35BFCD19569A9F91A3CCCF5, - 7C7B33BC2E2F245C8AFC9879, - 110285CA29B28DDC018D2BF0, - ECF05C68A4DF71A10F8E8BA4, - 50CE14D31986BA1BC81B0869, - E421EC41CB492F58BF1D9C4E, - E3CDB77EF18430879925E6A3, - 55E5B76FB1649B60DBE16B89, - 6D1A45ED50BAFAE4F4E403AC, - 70D519927F38B21BE572201A, - E4EFC5F8828526CE4518F1E6, - 835F7FDCAD027B4E96AB407C, - D027C0131892DA25CE716DDE, - A65EBA33900ED91BE522DBF7, - 0D91D36C2195315FE534F304, - A1E82F70796B8611D7323247, - BC1856E0B20406DDCE5EBF94, - FF3A28F88174E10CB478931E, - C39AE37828718E9A45589A24, - 4400B0595B35F919291C1A01, - BB1DAC0CA8D7B3DEEDEE76C6, - 56F347211337C9229BA06AA7, - 75EAEC54BA3A8BD7F317C7E4, - 5FFFA4B8857D64FE36B4B125, - 1D406F33F6B9FE7F92A71438, - 806FF2617B7CC21609927A11, - 9AA76460DA7D34CE6A69E2B1, - 4E81BC4A50CF1883F529E152, - 8FBB6BF0C5406E1BA481CFEF, - F5F3F25D9F377128DC74D95B, - C64A2BF05224582134872415, - 0A9C9486A6B31F21B1472D2B, - ED9F9A6CB4F8BB7FEA5384B7, - DE0BAD16BD5A6568EB4D228B, - AF6FEC311B9FDA112CEEBE03, - 3795ECCE9D98F872F5BCAE64, - 723CFE5184B20B12ECABEB41, - DB6098F004F6D7F19605002E, - 757AC60B8BA481E592FFE6FF, - FC659F15D298558D9553B643, - C090ACD462D9431C8B64CAD1, - D894FBF1CF62C5F126213616, - 3D80F7AE3D65EE0BB607F252, - 2F33C392A0DD205A865955DE, - 36615B7CB2BE96B624C4ADC0, - 4F2AAD8318402F8C23A9EA54, - E6971F06B78AE76C35E1A19C, - 6629D535AE1ABE35A0D53C69, - DD4599D0A8117B025B477DE1, - E064E329741F36C329989203, - 61E659ADBF9D832ED8F24540, - 9379C833B875207E5DFC5A3F, - F1A6C2E3226F87860BFC4EBC, - 144872E56AED1981C0973B24, - 95648DF5676EBEF57009D09A, - 2FE59D80851A0A392EF2F923, - 621D2E6CDA267030405166C2, - 90347B7C32ACE8A11FC1B708, - FAC87D81FE5168E37645A113, - E5BB4B5EBFE206E09D0E6E10, - 1906C642BF6CA67821512855, - 6F41A81F269BCBB912C6AFBC, - 7BB45CEB3B0913F98FC817F5, - F41D6061AD873C619D7436FB, - 1FC0972EFBE39C7CDEB73A3D, - E63E64BFF5FDCEF5B53AE304, - E162F83B5F038092E2C70FC0, - 710BF477DE534CF18BD68959, - E5DA150E966B948C4CB4EFDB, - E96B477EB51FC152AC2EA6BD, - CF36EF39EEAB7A4744C5D310, - 372B6FF28C49018F5191C517, - D9AAB4AE220010CD526C87D2, - C732ADB05901619B14F1D6BB, - 075D5995E41FDD670ED35E17, - BBE02E8719411C8A7D43A401, - 35E3B9684ED968BAC0BC8021, - 736AC4A9DA6515B92644FA02, - DFFBADCBC9C7E31B391BA560, - A24A946371D566E02BCC95A5, - D390CCB01BD9BD132F04E0A6, - 26E2FB6533B5700FA9780E00, - AF5593DEC14D551C38CCB50D, - 0B830401EA0E883CCAAAC696, - 3897B36CC1D89C5755CE1B90, - C55B00378E784DE4B428E934, - 82A9E0388C9BF3A698DCEF69, - 7F6749BFCF2F134468825D45, - 277CF246D5EE48868E38E625, - 4D285D9D3F5955F2FD574D04, - 30F9B53BD00228406F6477DF, - 759633D5CDB35874FD37DD7F, - E0F309D93E9A7F0CC71C4503, - F246AADF8E531BC2244A1D38, - F78940DAEB8BE98A9AA4B0BE, - 00FE118356919D0BA97AE853, - 18D8A96CCD34E41A5E162AD5, - CEB8A9B9A37EBBA79A6478D4, - D6D48B2CC53FAE2BD126B0DE, - C384A89F786FDE8426F657D5, - 3D324F656EEF8F1FB2B437AC, - 645AF66C048A4815F5A8ECDD, - 38EFE824E76B3BB99824C265, - E23C5C51305DC7CE30E4DAB7, - 60E1742796432D042C59B9B3, - B92F53BABB6A9AC8348B001E, - EBC3AA015D24C62FA0307F51, - 803FFCA3DAC0C004A80143B4, - F0556B3AD9D388177E26B90D, - 0558FFF11AED944C6B3E5FB5, - CF73FAC91E319C464F07C966, - B6D3EDA0F2E3516F3922F23F, - E7C9FAA5F8A4AEDAD8A8CC1D, - 084C9F2D4F78134CB1EFE676, - 4DAD08CD3A688747C9CA237B, - 60FE8BFA252E3EF2D60B77AD, - C592CC923C5495467EF05D48, - E12096E92D3D43DD7926E063, - F4567E6C9ABFB13FF24797DE, - 0B0996F97D926609C23E5F90, - FB5900FB9E071EDC2542B846, - EDE605169F0AF038FE5097B3, - D78C3DA6505CE8CC3F17C070, - B23EE989379EB2F075D6F587, - ED7C62DE10250FCC07CF17B2, - 1535D49C24E8A9FA5F6DCF6E, - BBCA4C01CEF1EDA75625D6DC, - 136FB9588C834E6F4A1EEBFB, - 274415D1C0AE9BF56FAAE791, - CBAD975785BD26A0DA9417B6, - 2A8F78D412AC7EC0C2998A1A, - 2DD969525DEF4AD408E9BB59, - 059B694C912BE81023D5240D, - 4387EB80C5795FACBE753A7F, - B2C41D39730EB3AC75D55949, - F045E8F977C00016F6EBB1B7, - B89FE5AB44DDEBCC050F8D7A, - 2EA320797BD7D2137F133681, - 1008A8A446B9BCADBB853056, - 0FB1AED6E5AB5CEA95E70950, - 103A3B11DFE35E9088ECE933, - DAC7AB8D9EA70D99A1C1287E, - B3D08D9E24CC369E4838E6FF, - 15932C8039A59B0431FBB93E, - 3BBC410C79D2F53D32ED7466, - 88A4D0443DFD6BA1A1B32AB9, - 06F1BEB9AB97F33305B8F816, - 6CB4FA2797FBEA5C4C342EED, - 150C16E65ADC7E3359C88510, - 9C547F4DC4FC50F9C3382ACE, - 5D1B2A14239B0351261D832E, - 0AFD6B2B694302A62C7C9DD1, - 3CE21931FC5A59ED7C23144B, - DB7E8E984F9BEF4C84B887B1, - 07645D91AFD4F8512ECD48ED, - D132232A4A404A7C08D10928, - 83B488D64AB9828CFFBC55A9, - 8305C5E01476E99FBB1A0315, - FF613B604C2333F4A4ACEDDA, - CECE3D66B19693E41850C30D, - DF419EBD05F13A0D2073D47A, - C9FB7884928BF0D6140AF881, - 5C9628DB3E0C0BA8809AE45D, - 724DA2BCA5ABC5772604C3B4, - 035B1F7B1505ABF24455690E, - 3C71EA297D7418FEBB52F9DD, - 7A86E411B55E15DA7AF1FE67, - BD86381924AE45021246ABA3, - 306AB64E97A05B800349E7E2, - E7A5418175B23C794421441C, - 51F5844EAE455D51BDB17228, - C99F35ABEC13F58C27C1D303, - 3D9B5EDBECAA680B0A067F5C, - 724B03672FC7862B671969BC, - 8B31099030792C554BD51211, - D04EEEC7EAE7C806E95ED41C, - 7EA440527972D6B7322EC307, - CB9FE1DA1AFE5FBA9FF06061, - 26454A5DB5BAFD7901F17DA7, - F41B46F970BA78762DCE67D1, - B7A8CF6F889840BED05C8C27, - 3EBF23F390FC0227260CF7CB, - 1906FDEEDAE61C88A59BC271, - F51142C2CF336FC4A4FAACC6, - 1021132FAC7870AC18C040DE, - 05C8FA821C64B69BFF8FAF2C, - 5E330E219B2D2944BCE95174, - 275FBC09BE58E708A73B88C1, - 6DA99BA218FB45568258841C, - 32F1C95EDEE7722797B8CEE8, - 029A0E8B44DC17211722677D, - 4B4E17467BC41E2166549998, - 9686F29C29D1C26E353DE68A, - 79B4C2F1C0CF592ACE8093C0, - 88A87D28B3809665F28DC16E, - 6BDBEFD97E643E5BB27637FF, - BC3C22F5350ED7433D303A04, - 0B41EC4D7839F8CBCB8F9A0D, - B420CD4B589C08EAFA6E3DA4, - D4A05D7CA67B6F0527C9BD81, - 0D7547577A31512EDCEDC42C, - E2FDC7D3E3DC4C1423FA0C5B, - A46B0025A68136ED993E0D85, - B99678E919BF547A3A3F5D6E, - 5B714CDD0082419BFED7D2D4, - 2DD498313DA488A5063C4C1B, - 5B33FFE120A47EF42CBC05E4, - 552D45FB250C62F86CD02A57, - 0E8E9829E95E32163F45482D, - 6801797B247CB3A6890C0AB0, - B0B82AB2D9B0950F67B11BEA, - 379B4A89E5403B57A2009E76, - 6ED121D4FEE575408B9612AB, - 9ADE436BC62FB84E297C1CA0, - 03D534E5B18011C3E03CDD40, - 06E2ED69E9FAC199D559F276, - 9801CCC32F01818B39CFD88E, - FE553DDF4F83DABF13DF4A2B, - 68DB48B0EC9E5E37C6B5281C, - 96E9017FBE104E9EADC586B1, - BA6C6EF4C88D49C640DA7BF6, - 0B124D9CE361014F815A5958, - C701E3FCB168A3B4A31C4242, - 04F6D85CCF26A7F6DE589876, - 62912A2DA2F01212517938E7, - 36D770FCDAC86084A495B96E, - DA2A4714F1A6957A4F2B8D48, - CE9A64287FCEF00DD2BA6AEE, - 2AC6F3BFAAA21E21076A9F8D, - B8DD4DB0BD1A6B38BBF92413, - 1C0B1362E81C8B073BF0DCEC, - 63BEC07A51CB8E516B38ECD4, - C8F81E843F446868FAD88197, - 50D91A2EC0ABF894E612D936, - 82568CF438EF4C950E4A42DF, - B2E9D0C534DDE9F96921A054, - C8D06AE9C68A675A87DC9C99, - FE2999972FE3D6E251DA6653, - 8B2193898D3465B5995EE98A, - 4FB3EE200AEA14C7218D7034, - 81E79D9217773BF0E39F7812, - 2A360CDF2B5A46B282CEA2C4, - 01FD07AB480226E84D52F591, - D8B9941A1375579D6CE7C1C4, - 0DE731ED3EC994B9227C2741, - A124FE5709D9324B5BAFFE53, - A84A5CA4654AE87192A6A096, - 55EDB4D9B702B469DB4655C3 ); runOnlyForDeploymentPostprocessing = 0; }; - 01555BA382FAED280FF5F58A = { isa = PBXNativeTarget; buildConfigurationList = D14EC3F0DC5861E37D35E15A; buildPhases = ( - 8914D147048B9EE245989ACB ); buildRules = ( ); dependencies = ( ); name = Juce; productName = Juce; productReference = 389351359BA78C682E1931A6; productType = "com.apple.product-type.library.static"; }; - FCFFEDFC83101B196BFA2AE2 = { isa = PBXProject; buildConfigurationList = 3A1CB6B5ECF4A79CDE35CC66; compatibilityVersion = "Xcode 3.1"; hasScannedForEncodings = 0; mainGroup = 25F381A264FFB3735F124DCC; projectDirPath = ""; projectRoot = ""; targets = ( 01555BA382FAED280FF5F58A ); }; - }; - rootObject = FCFFEDFC83101B196BFA2AE2; -} diff --git a/Builds/VisualStudio2005/Juce.sln b/Builds/VisualStudio2005/Juce.sln deleted file mode 100644 index 49f069576a..0000000000 --- a/Builds/VisualStudio2005/Juce.sln +++ /dev/null @@ -1,19 +0,0 @@ -Microsoft Visual Studio Solution File, Format Version 8.00 -# Visual C++ Express 2005 -Project("{30DE6365-A0C4-171D-3ADD-E102A1BD1BB8}") = "Juce", "Juce.vcproj", "{2F2AF28C-CD42-F164-1AC5-90A9ACD39DD3}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Win32 = Debug|Win32 - Release|Win32 = Release|Win32 - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {2F2AF28C-CD42-F164-1AC5-90A9ACD39DD3}.Debug|Win32.ActiveCfg = Debug|Win32 - {2F2AF28C-CD42-F164-1AC5-90A9ACD39DD3}.Debug|Win32.Build.0 = Debug|Win32 - {2F2AF28C-CD42-F164-1AC5-90A9ACD39DD3}.Release|Win32.ActiveCfg = Release|Win32 - {2F2AF28C-CD42-F164-1AC5-90A9ACD39DD3}.Release|Win32.Build.0 = Release|Win32 - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection -EndGlobal diff --git a/Builds/VisualStudio2005/Juce.vcproj b/Builds/VisualStudio2005/Juce.vcproj deleted file mode 100644 index 7323f7b832..0000000000 --- a/Builds/VisualStudio2005/Juce.vcproj +++ /dev/null @@ -1,1038 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Builds/VisualStudio2008/Juce.vcproj b/Builds/VisualStudio2008/Juce.vcproj deleted file mode 100644 index e076a2ac73..0000000000 --- a/Builds/VisualStudio2008/Juce.vcproj +++ /dev/null @@ -1,1038 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Builds/VisualStudio2008_DLL/Juce.vcproj b/Builds/VisualStudio2008_DLL/Juce.vcproj deleted file mode 100644 index a83b98eb80..0000000000 --- a/Builds/VisualStudio2008_DLL/Juce.vcproj +++ /dev/null @@ -1,1040 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Builds/VisualStudio2010/Juce.vcxproj b/Builds/VisualStudio2010/Juce.vcxproj deleted file mode 100644 index 75be023df0..0000000000 --- a/Builds/VisualStudio2010/Juce.vcxproj +++ /dev/null @@ -1,845 +0,0 @@ - - - - - - Debug - Win32 - - - Release - Win32 - - - - {2F2AF28C-CD42-F164-1AC5-90A9ACD39DD3} - - - - StaticLibrary - false - MultiByte - - - StaticLibrary - false - MultiByte - true - - - - - - - - - <_ProjectFileVersion>10.0.30319.1 - .\..\..\bin\ - .\..\..\bin\ - jucelib_static_Win32_debug - .\..\..\bin\ - .\..\..\bin\ - jucelib_static_Win32 - - - - _DEBUG;%(PreprocessorDefinitions) - true - true - Win32 - - - - Disabled - EditAndContinue - %(AdditionalIncludeDirectories) - _LIB;WIN32;_WINDOWS;DEBUG;_DEBUG;JUCER_VS2010_78A501D=1;%(PreprocessorDefinitions) - MultiThreadedDebug - true - - .\Debug\ - .\Debug\ - .\Debug\ - Level4 - true - - - _DEBUG;%(PreprocessorDefinitions) - - - .\..\..\bin\jucelib_static_Win32_debug.lib - true - libcmt.lib; msvcrt.lib;;%(IgnoreSpecificDefaultLibraries) - true - .\Debug\jucedebug.pdb - Windows - MachineX86 - - - true - .\Debug\jucedebug.bsc - - - - - NDEBUG;%(PreprocessorDefinitions) - true - true - Win32 - - - - MaxSpeed - %(AdditionalIncludeDirectories) - _LIB;WIN32;_WINDOWS;NDEBUG;JUCER_VS2010_78A501D=1;%(PreprocessorDefinitions) - MultiThreaded - true - - .\Release\ - .\Release\ - .\Release\ - Level4 - true - - - NDEBUG;%(PreprocessorDefinitions) - - - .\..\..\bin\jucelib_static_Win32.lib - true - %(IgnoreSpecificDefaultLibraries) - false - .\Release\juce.pdb - Windows - MachineX86 - true - true - - - true - .\Release\juce.bsc - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Builds/VisualStudio2010/Juce.vcxproj.filters b/Builds/VisualStudio2010/Juce.vcxproj.filters deleted file mode 100644 index 3ad7766b85..0000000000 --- a/Builds/VisualStudio2010/Juce.vcxproj.filters +++ /dev/null @@ -1,2446 +0,0 @@ - - - - - - {4EBB1AA0-C8C1-3A6E-4EEF-16D94A800C1D} - - - {E82B03B5-6C8B-32F8-FAB4-137DDBF9B03B} - - - {CAC35CEF-05A2-0670-EC21-954802764D60} - - - {17E38334-C120-7A48-FC92-3B30391D55FA} - - - {7C06CCB7-976D-79CF-57E4-FCE804DF4E19} - - - {0B983ACE-956D-6A24-F8C8-CE5BB260747E} - - - {886F5D81-78E1-42D2-7966-8746D242F6A6} - - - {7EB89E3D-DEFC-BD00-47DB-6EFE2D2EBA94} - - - {3C5ABC64-AB1E-2A0D-A185-828FFD5B5668} - - - {CB2E433E-1BE3-ABE4-5184-808BFB05F3DA} - - - {3EA06C97-CA9B-017F-F658-B6AFE39B1F5F} - - - {2B37EA38-AE04-A748-30AA-CB4C6CB18570} - - - {116E44B0-2193-064C-D252-3CA9C69E72B4} - - - {0F3CA87D-CB24-BF9D-4A8B-47E079B2DF7C} - - - {B8CE82F1-B084-4B70-AB1D-3D0F56ECC8D1} - - - {CCD85E1C-AAD0-AE3D-B543-2DD1401AC274} - - - {16408406-C36B-3D15-02A0-1A95C9BA465C} - - - {02356100-882F-2B5A-04F2-4692C2D43816} - - - {C853ECCB-F0E9-FFF3-55DB-419E2B20B837} - - - {7E0F3FCA-F70B-CADA-CF05-86754F3109E7} - - - {54AC0A55-CC5C-6219-AB36-B5C26B885E20} - - - {CC9556B2-2BC2-96E0-32C4-F3A69670C658} - - - {4363D749-999F-79AB-8824-5D6C2C6D4548} - - - {77B59E1F-0AAA-45EC-DEDF-5833BFD6ABB2} - - - {71E7F95D-5D93-6A52-3B04-3079DE9B7520} - - - {64DE4A8F-F3A6-60D4-ABCE-EB9D0645D899} - - - {C88D4A21-79EB-12CE-AE91-861542871292} - - - {3D424C6E-60D9-F5D7-57A3-12E338CF5854} - - - {0BBC3B03-2BD1-0BE2-48DE-42B6003D20C9} - - - {E8CDBA7B-355C-DDCD-2933-BE4FB964F2B6} - - - {E32AB6D4-DAAE-5D7D-1B1D-43D79A874FC8} - - - {6F3422BC-1140-5902-4BE8-83E7693136AC} - - - {1FB1BF2B-A73D-FC59-6CEE-219A5A9D57DF} - - - {3858B8C1-6873-0627-2387-678CC788EA96} - - - {9EF0AA5A-8B7F-E8BD-5EEC-5452C255D342} - - - {7DAEDC2C-B323-896A-3273-4C4108461BB0} - - - {210D20DC-B260-4F3D-A08A-2FC4DEAFD9BD} - - - {B5741E32-133D-F56B-DC82-F47AF8B0D27D} - - - {B4A49E1D-E5A4-A7B8-0749-252EFC318BDE} - - - {1DF00D90-FA2E-A2AF-AED9-379D050629F3} - - - {4BA22EF4-EF5A-8FA7-2A4F-2EA55A126598} - - - {37CE3166-A559-E350-DFC9-A963810B59A6} - - - {97F2C641-6AEA-7FA9-193B-C8F36EE0DD0F} - - - {E94A000A-7F89-9C6C-C393-1A9B18E0C716} - - - {5141F842-AA21-CDC9-1EA1-22266EBD7807} - - - {89F198B9-60A8-D24F-5204-2CD67851BCF3} - - - {490D1803-CF9F-8D56-E16A-D15EEDB8C3E9} - - - {939AB894-8A98-5465-332C-88B3EE3FAFC1} - - - {D6FF810F-61FA-739C-D430-3A9DD573F077} - - - {4399B64E-2D91-A936-C261-CB4AF3F4ADFA} - - - {1C375704-29AD-E915-5C03-96A9DF473A21} - - - {E48884B1-132F-96C5-EF93-AB47FE750C9B} - - - {F1BA3931-F495-119F-BE20-A6117A1CD41A} - - - {EBCA4826-20A6-A600-3179-3208DCEE7F9A} - - - {BC072C4D-20F2-393F-A199-BA12EADC660F} - - - {8967A721-6CC3-0F4D-4300-6566C7A2AD58} - - - {23C18B4F-06EA-FC28-9229-7AF1ACA6F6EA} - - - {00FDA359-9F94-7E24-9C9E-5E78860054FC} - - - {AED1A02A-B39D-B69B-FD23-861C4E50621B} - - - {EA223401-284E-5F2F-FACB-4944AF280662} - - - - - Juce\application - - - Juce\application - - - Juce\application - - - Juce\application - - - Juce\application - - - Juce\audio\audio_file_formats - - - Juce\audio\audio_file_formats - - - Juce\audio\audio_file_formats - - - Juce\audio\audio_file_formats - - - Juce\audio\audio_file_formats - - - Juce\audio\audio_file_formats - - - Juce\audio\audio_file_formats - - - Juce\audio\audio_file_formats - - - Juce\audio\audio_file_formats - - - Juce\audio\audio_file_formats - - - Juce\audio\audio_file_formats - - - Juce\audio\audio_file_formats - - - Juce\audio\audio_file_formats - - - Juce\audio\audio_file_formats - - - Juce\audio\audio_sources - - - Juce\audio\audio_sources - - - Juce\audio\audio_sources - - - Juce\audio\audio_sources - - - Juce\audio\audio_sources - - - Juce\audio\audio_sources - - - Juce\audio\audio_sources - - - Juce\audio\audio_sources - - - Juce\audio\audio_sources - - - Juce\audio\audio_sources - - - Juce\audio\devices - - - Juce\audio\devices - - - Juce\audio\devices - - - Juce\audio\dsp - - - Juce\audio\dsp - - - Juce\audio\dsp - - - Juce\audio\midi - - - Juce\audio\midi - - - Juce\audio\midi - - - Juce\audio\midi - - - Juce\audio\midi - - - Juce\audio\midi - - - Juce\audio\midi - - - Juce\audio\plugin_client\AU - - - Juce\audio\plugin_client\RTAS - - - Juce\audio\plugin_client\RTAS - - - Juce\audio\plugin_client\RTAS - - - Juce\audio\plugin_client\RTAS - - - Juce\audio\plugin_client\RTAS - - - Juce\audio\plugin_client\RTAS - - - Juce\audio\plugin_client\VST - - - Juce\audio\plugin_client\VST - - - Juce\audio\plugin_client\Standalone - - - Juce\audio\plugin_host\formats - - - Juce\audio\plugin_host\formats - - - Juce\audio\plugin_host\formats - - - Juce\audio\plugin_host - - - Juce\audio\plugin_host - - - Juce\audio\plugin_host - - - Juce\audio\plugin_host - - - Juce\audio\plugin_host - - - Juce\audio\plugin_host - - - Juce\audio\processors - - - Juce\audio\processors - - - Juce\audio\processors - - - Juce\audio\processors - - - Juce\audio\processors - - - Juce\audio\synthesisers - - - Juce\audio\synthesisers - - - Juce\containers - - - Juce\containers - - - Juce\containers - - - Juce\containers - - - Juce\containers - - - Juce\containers - - - Juce\containers - - - Juce\core - - - Juce\core - - - Juce\core - - - Juce\core - - - Juce\core - - - Juce\core - - - Juce\core - - - Juce\core - - - Juce\cryptography - - - Juce\cryptography - - - Juce\cryptography - - - Juce\cryptography - - - Juce\cryptography - - - Juce\events - - - Juce\events - - - Juce\events - - - Juce\events - - - Juce\events - - - Juce\events - - - Juce\events - - - Juce\events - - - Juce\events - - - Juce\events - - - Juce\gui\components - - - Juce\gui\components - - - Juce\gui\components - - - Juce\gui\components - - - Juce\gui\components\buttons - - - Juce\gui\components\buttons - - - Juce\gui\components\buttons - - - Juce\gui\components\buttons - - - Juce\gui\components\buttons - - - Juce\gui\components\buttons - - - Juce\gui\components\buttons - - - Juce\gui\components\buttons - - - Juce\gui\components\buttons - - - Juce\gui\components\code_editor - - - Juce\gui\components\code_editor - - - Juce\gui\components\code_editor - - - Juce\gui\components\controls - - - Juce\gui\components\controls - - - Juce\gui\components\controls - - - Juce\gui\components\controls - - - Juce\gui\components\controls - - - Juce\gui\components\controls - - - Juce\gui\components\controls - - - Juce\gui\components\controls - - - Juce\gui\components\controls - - - Juce\gui\components\controls - - - Juce\gui\components\controls - - - Juce\gui\components\controls - - - Juce\gui\components\controls - - - Juce\gui\components\filebrowser - - - Juce\gui\components\filebrowser - - - Juce\gui\components\filebrowser - - - Juce\gui\components\filebrowser - - - Juce\gui\components\filebrowser - - - Juce\gui\components\filebrowser - - - Juce\gui\components\filebrowser - - - Juce\gui\components\filebrowser - - - Juce\gui\components\filebrowser - - - Juce\gui\components\filebrowser - - - Juce\gui\components\filebrowser - - - Juce\gui\components\filebrowser - - - Juce\gui\components\keyboard - - - Juce\gui\components\keyboard - - - Juce\gui\components\keyboard - - - Juce\gui\components\keyboard - - - Juce\gui\components\keyboard - - - Juce\gui\components\keyboard - - - Juce\gui\components\keyboard - - - Juce\gui\components\layout - - - Juce\gui\components\layout - - - Juce\gui\components\layout - - - Juce\gui\components\layout - - - Juce\gui\components\layout - - - Juce\gui\components\layout - - - Juce\gui\components\layout - - - Juce\gui\components\layout - - - Juce\gui\components\layout - - - Juce\gui\components\layout - - - Juce\gui\components\layout - - - Juce\gui\components\layout - - - Juce\gui\components\layout - - - Juce\gui\components\layout - - - Juce\gui\components\layout - - - Juce\gui\components\layout - - - Juce\gui\components\lookandfeel - - - Juce\gui\components\lookandfeel - - - Juce\gui\components\menus - - - Juce\gui\components\menus - - - Juce\gui\components\menus - - - Juce\gui\components\mouse - - - Juce\gui\components\mouse - - - Juce\gui\components\mouse - - - Juce\gui\components\mouse - - - Juce\gui\components\mouse - - - Juce\gui\components\mouse - - - Juce\gui\components\positioning - - - Juce\gui\components\positioning - - - Juce\gui\components\positioning - - - Juce\gui\components\positioning - - - Juce\gui\components\positioning - - - Juce\gui\components\positioning - - - Juce\gui\components\positioning - - - Juce\gui\components\properties - - - Juce\gui\components\properties - - - Juce\gui\components\properties - - - Juce\gui\components\properties - - - Juce\gui\components\properties - - - Juce\gui\components\properties - - - Juce\gui\components\properties - - - Juce\gui\components\special - - - Juce\gui\components\special - - - Juce\gui\components\special - - - Juce\gui\components\special - - - Juce\gui\components\special - - - Juce\gui\components\special - - - Juce\gui\components\special - - - Juce\gui\components\special - - - Juce\gui\components\special - - - Juce\gui\components\windows - - - Juce\gui\components\windows - - - Juce\gui\components\windows - - - Juce\gui\components\windows - - - Juce\gui\components\windows - - - Juce\gui\components\windows - - - Juce\gui\components\windows - - - Juce\gui\components\windows - - - Juce\gui\components\windows - - - Juce\gui\components\windows - - - Juce\gui\graphics\colour - - - Juce\gui\graphics\colour - - - Juce\gui\graphics\colour - - - Juce\gui\graphics\contexts - - - Juce\gui\graphics\contexts - - - Juce\gui\graphics\contexts - - - Juce\gui\graphics\contexts - - - Juce\gui\graphics\contexts - - - Juce\gui\graphics\contexts - - - Juce\gui\graphics\contexts - - - Juce\gui\graphics\drawables - - - Juce\gui\graphics\drawables - - - Juce\gui\graphics\drawables - - - Juce\gui\graphics\drawables - - - Juce\gui\graphics\drawables - - - Juce\gui\graphics\drawables - - - Juce\gui\graphics\drawables - - - Juce\gui\graphics\drawables - - - Juce\gui\graphics\effects - - - Juce\gui\graphics\effects - - - Juce\gui\graphics\fonts - - - Juce\gui\graphics\fonts - - - Juce\gui\graphics\fonts - - - Juce\gui\graphics\fonts - - - Juce\gui\graphics\fonts - - - Juce\gui\graphics\geometry - - - Juce\gui\graphics\geometry - - - Juce\gui\graphics\geometry - - - Juce\gui\graphics\geometry - - - Juce\gui\graphics\geometry - - - Juce\gui\graphics\imaging\image_file_formats - - - Juce\gui\graphics\imaging\image_file_formats - - - Juce\gui\graphics\imaging\image_file_formats - - - Juce\gui\graphics\imaging - - - Juce\gui\graphics\imaging - - - Juce\gui\graphics\imaging - - - Juce\gui\graphics\imaging - - - Juce\io\files - - - Juce\io\files - - - Juce\io\files - - - Juce\io\files - - - Juce\io\files - - - Juce\io\files - - - Juce\io\files - - - Juce\io\files - - - Juce\io\network - - - Juce\io\network - - - Juce\io\network - - - Juce\io\streams - - - Juce\io\streams - - - Juce\io\streams - - - Juce\io\streams - - - Juce\io\streams - - - Juce\io\streams - - - Juce\io\streams - - - Juce\io\streams - - - Juce\io\streams - - - Juce\maths - - - Juce\maths - - - Juce\maths - - - Juce\memory - - - Juce\native\common - - - Juce\native\linux - - - Juce\native\linux - - - Juce\native\linux - - - Juce\native\linux - - - Juce\native\linux - - - Juce\native\linux - - - Juce\native\linux - - - Juce\native\linux - - - Juce\native\linux - - - Juce\native\linux - - - Juce\native\linux - - - Juce\native\linux - - - Juce\native\linux - - - Juce\native\linux - - - Juce\native\linux - - - Juce\native\linux - - - Juce\native\mac - - - Juce\native\mac - - - Juce\native\mac - - - Juce\native\mac - - - Juce\native\mac - - - Juce\native\mac - - - Juce\native\mac - - - Juce\native\mac - - - Juce\native\mac - - - Juce\native\mac - - - Juce\native\mac - - - Juce\native\mac - - - Juce\native\mac - - - Juce\native\mac - - - Juce\native\mac - - - Juce\native\mac - - - Juce\native\mac - - - Juce\native\mac - - - Juce\native\mac - - - Juce\native\mac - - - Juce\native\mac - - - Juce\native\mac - - - Juce\native\mac - - - Juce\native\mac - - - Juce\native\mac - - - Juce\native\mac - - - Juce\native\mac - - - Juce\native\mac - - - Juce\native\windows - - - Juce\native\windows - - - Juce\native\windows - - - Juce\native\windows - - - Juce\native\windows - - - Juce\native\windows - - - Juce\native\windows - - - Juce\native\windows - - - Juce\native\windows - - - Juce\native\windows - - - Juce\native\windows - - - Juce\native\windows - - - Juce\native\windows - - - Juce\native\windows - - - Juce\native\windows - - - Juce\native\windows - - - Juce\native\windows - - - Juce\native\windows - - - Juce\native\windows - - - Juce\native\windows - - - Juce\native\windows - - - Juce\native\windows - - - Juce\native\android - - - Juce\native\android - - - Juce\native\android - - - Juce\native\android - - - Juce\native\android - - - Juce\native\android - - - Juce\native\android - - - Juce\native\android - - - Juce\native\android - - - Juce\native\android - - - Juce\native\android - - - Juce\native\android - - - Juce\native\android - - - Juce\native\android - - - Juce\native\android - - - Juce\native\android - - - Juce\text - - - Juce\text - - - Juce\text - - - Juce\text - - - Juce\text - - - Juce\text - - - Juce\text - - - Juce\text - - - Juce\text - - - Juce\text - - - Juce\threads - - - Juce\threads - - - Juce\threads - - - Juce\threads - - - Juce\utilities - - - Juce\utilities - - - Juce\utilities - - - Juce\utilities - - - Juce\utilities - - - Juce\utilities - - - - - Juce\application - - - Juce\application - - - Juce\application - - - Juce\application - - - Juce\application - - - Juce\application - - - Juce\audio\audio_file_formats - - - Juce\audio\audio_file_formats - - - Juce\audio\audio_file_formats - - - Juce\audio\audio_file_formats - - - Juce\audio\audio_file_formats - - - Juce\audio\audio_file_formats - - - Juce\audio\audio_file_formats - - - Juce\audio\audio_file_formats - - - Juce\audio\audio_file_formats - - - Juce\audio\audio_file_formats - - - Juce\audio\audio_file_formats - - - Juce\audio\audio_file_formats - - - Juce\audio\audio_file_formats - - - Juce\audio\audio_file_formats - - - Juce\audio\audio_file_formats - - - Juce\audio\audio_sources - - - Juce\audio\audio_sources - - - Juce\audio\audio_sources - - - Juce\audio\audio_sources - - - Juce\audio\audio_sources - - - Juce\audio\audio_sources - - - Juce\audio\audio_sources - - - Juce\audio\audio_sources - - - Juce\audio\audio_sources - - - Juce\audio\audio_sources - - - Juce\audio\audio_sources - - - Juce\audio\audio_sources - - - Juce\audio\devices - - - Juce\audio\devices - - - Juce\audio\devices - - - Juce\audio\dsp - - - Juce\audio\dsp - - - Juce\audio\dsp - - - Juce\audio\dsp - - - Juce\audio\dsp - - - Juce\audio\midi - - - Juce\audio\midi - - - Juce\audio\midi - - - Juce\audio\midi - - - Juce\audio\midi - - - Juce\audio\midi - - - Juce\audio\midi - - - Juce\audio\midi - - - Juce\audio\plugin_client\RTAS - - - Juce\audio\plugin_client\Standalone - - - Juce\audio\plugin_client - - - Juce\audio\plugin_client - - - Juce\audio\plugin_client - - - Juce\audio\plugin_host\formats - - - Juce\audio\plugin_host\formats - - - Juce\audio\plugin_host\formats - - - Juce\audio\plugin_host\formats - - - Juce\audio\plugin_host\formats - - - Juce\audio\plugin_host - - - Juce\audio\plugin_host - - - Juce\audio\plugin_host - - - Juce\audio\plugin_host - - - Juce\audio\plugin_host - - - Juce\audio\plugin_host - - - Juce\audio\plugin_host - - - Juce\audio\processors - - - Juce\audio\processors - - - Juce\audio\processors - - - Juce\audio\processors - - - Juce\audio\processors - - - Juce\audio\processors - - - Juce\audio\processors - - - Juce\audio\synthesisers - - - Juce\audio\synthesisers - - - Juce\containers - - - Juce\containers - - - Juce\containers - - - Juce\containers - - - Juce\containers - - - Juce\containers - - - Juce\containers - - - Juce\containers - - - Juce\containers - - - Juce\containers - - - Juce\containers - - - Juce\containers - - - Juce\containers - - - Juce\containers - - - Juce\containers - - - Juce\containers - - - Juce\containers - - - Juce\core - - - Juce\core - - - Juce\core - - - Juce\core - - - Juce\core - - - Juce\core - - - Juce\core - - - Juce\core - - - Juce\core - - - Juce\core - - - Juce\core - - - Juce\core - - - Juce\core - - - Juce\cryptography - - - Juce\cryptography - - - Juce\cryptography - - - Juce\cryptography - - - Juce\cryptography - - - Juce\events - - - Juce\events - - - Juce\events - - - Juce\events - - - Juce\events - - - Juce\events - - - Juce\events - - - Juce\events - - - Juce\events - - - Juce\events - - - Juce\events - - - Juce\events - - - Juce\events - - - Juce\events - - - Juce\events - - - Juce\gui\components - - - Juce\gui\components - - - Juce\gui\components - - - Juce\gui\components - - - Juce\gui\components\buttons - - - Juce\gui\components\buttons - - - Juce\gui\components\buttons - - - Juce\gui\components\buttons - - - Juce\gui\components\buttons - - - Juce\gui\components\buttons - - - Juce\gui\components\buttons - - - Juce\gui\components\buttons - - - Juce\gui\components\buttons - - - Juce\gui\components\code_editor - - - Juce\gui\components\code_editor - - - Juce\gui\components\code_editor - - - Juce\gui\components\code_editor - - - Juce\gui\components\controls - - - Juce\gui\components\controls - - - Juce\gui\components\controls - - - Juce\gui\components\controls - - - Juce\gui\components\controls - - - Juce\gui\components\controls - - - Juce\gui\components\controls - - - Juce\gui\components\controls - - - Juce\gui\components\controls - - - Juce\gui\components\controls - - - Juce\gui\components\controls - - - Juce\gui\components\controls - - - Juce\gui\components\controls - - - Juce\gui\components\controls - - - Juce\gui\components\filebrowser - - - Juce\gui\components\filebrowser - - - Juce\gui\components\filebrowser - - - Juce\gui\components\filebrowser - - - Juce\gui\components\filebrowser - - - Juce\gui\components\filebrowser - - - Juce\gui\components\filebrowser - - - Juce\gui\components\filebrowser - - - Juce\gui\components\filebrowser - - - Juce\gui\components\filebrowser - - - Juce\gui\components\filebrowser - - - Juce\gui\components\filebrowser - - - Juce\gui\components\filebrowser - - - Juce\gui\components\filebrowser - - - Juce\gui\components\keyboard - - - Juce\gui\components\keyboard - - - Juce\gui\components\keyboard - - - Juce\gui\components\keyboard - - - Juce\gui\components\keyboard - - - Juce\gui\components\keyboard - - - Juce\gui\components\keyboard - - - Juce\gui\components\keyboard - - - Juce\gui\components\keyboard - - - Juce\gui\components\layout - - - Juce\gui\components\layout - - - Juce\gui\components\layout - - - Juce\gui\components\layout - - - Juce\gui\components\layout - - - Juce\gui\components\layout - - - Juce\gui\components\layout - - - Juce\gui\components\layout - - - Juce\gui\components\layout - - - Juce\gui\components\layout - - - Juce\gui\components\layout - - - Juce\gui\components\layout - - - Juce\gui\components\layout - - - Juce\gui\components\layout - - - Juce\gui\components\layout - - - Juce\gui\components\layout - - - Juce\gui\components\lookandfeel - - - Juce\gui\components\lookandfeel - - - Juce\gui\components\menus - - - Juce\gui\components\menus - - - Juce\gui\components\menus - - - Juce\gui\components\mouse - - - Juce\gui\components\mouse - - - Juce\gui\components\mouse - - - Juce\gui\components\mouse - - - Juce\gui\components\mouse - - - Juce\gui\components\mouse - - - Juce\gui\components\mouse - - - Juce\gui\components\mouse - - - Juce\gui\components\mouse - - - Juce\gui\components\mouse - - - Juce\gui\components\positioning - - - Juce\gui\components\positioning - - - Juce\gui\components\positioning - - - Juce\gui\components\positioning - - - Juce\gui\components\positioning - - - Juce\gui\components\positioning - - - Juce\gui\components\positioning - - - Juce\gui\components\properties - - - Juce\gui\components\properties - - - Juce\gui\components\properties - - - Juce\gui\components\properties - - - Juce\gui\components\properties - - - Juce\gui\components\properties - - - Juce\gui\components\properties - - - Juce\gui\components\special - - - Juce\gui\components\special - - - Juce\gui\components\special - - - Juce\gui\components\special - - - Juce\gui\components\special - - - Juce\gui\components\special - - - Juce\gui\components\special - - - Juce\gui\components\special - - - Juce\gui\components\special - - - Juce\gui\components\special - - - Juce\gui\components\special - - - Juce\gui\components\special - - - Juce\gui\components\special - - - Juce\gui\components\special - - - Juce\gui\components\special - - - Juce\gui\components\windows - - - Juce\gui\components\windows - - - Juce\gui\components\windows - - - Juce\gui\components\windows - - - Juce\gui\components\windows - - - Juce\gui\components\windows - - - Juce\gui\components\windows - - - Juce\gui\components\windows - - - Juce\gui\components\windows - - - Juce\gui\components\windows - - - Juce\gui\components\windows - - - Juce\gui\graphics\colour - - - Juce\gui\graphics\colour - - - Juce\gui\graphics\colour - - - Juce\gui\graphics\colour - - - Juce\gui\graphics\contexts - - - Juce\gui\graphics\contexts - - - Juce\gui\graphics\contexts - - - Juce\gui\graphics\contexts - - - Juce\gui\graphics\contexts - - - Juce\gui\graphics\contexts - - - Juce\gui\graphics\contexts - - - Juce\gui\graphics\contexts - - - Juce\gui\graphics\drawables - - - Juce\gui\graphics\drawables - - - Juce\gui\graphics\drawables - - - Juce\gui\graphics\drawables - - - Juce\gui\graphics\drawables - - - Juce\gui\graphics\drawables - - - Juce\gui\graphics\drawables - - - Juce\gui\graphics\effects - - - Juce\gui\graphics\effects - - - Juce\gui\graphics\effects - - - Juce\gui\graphics\fonts - - - Juce\gui\graphics\fonts - - - Juce\gui\graphics\fonts - - - Juce\gui\graphics\fonts - - - Juce\gui\graphics\fonts - - - Juce\gui\graphics\geometry - - - Juce\gui\graphics\geometry - - - Juce\gui\graphics\geometry - - - Juce\gui\graphics\geometry - - - Juce\gui\graphics\geometry - - - Juce\gui\graphics\geometry - - - Juce\gui\graphics\geometry - - - Juce\gui\graphics\geometry - - - Juce\gui\graphics\geometry - - - Juce\gui\graphics\imaging - - - Juce\gui\graphics\imaging - - - Juce\gui\graphics\imaging - - - Juce\gui\graphics\imaging - - - Juce\gui\graphics\imaging - - - Juce\io\files - - - Juce\io\files - - - Juce\io\files - - - Juce\io\files - - - Juce\io\files - - - Juce\io\files - - - Juce\io\files - - - Juce\io\files - - - Juce\io\files - - - Juce\io\network - - - Juce\io\network - - - Juce\io\network - - - Juce\io\streams - - - Juce\io\streams - - - Juce\io\streams - - - Juce\io\streams - - - Juce\io\streams - - - Juce\io\streams - - - Juce\io\streams - - - Juce\io\streams - - - Juce\io\streams - - - Juce\io\streams - - - Juce\maths - - - Juce\maths - - - Juce\maths - - - Juce\maths - - - Juce\maths - - - Juce\memory - - - Juce\memory - - - Juce\memory - - - Juce\memory - - - Juce\memory - - - Juce\memory - - - Juce\memory - - - Juce\memory - - - Juce\memory - - - Juce\memory - - - Juce\native\common - - - Juce\native\common - - - Juce\native\linux - - - Juce\native\mac - - - Juce\native\mac - - - Juce\native\mac - - - Juce\native\mac - - - Juce\native\mac - - - Juce\native\windows - - - Juce\native\windows - - - Juce\native\windows - - - Juce\native\windows - - - Juce\native\android - - - Juce\native\android - - - Juce\text - - - Juce\text - - - Juce\text - - - Juce\text - - - Juce\text - - - Juce\text - - - Juce\text - - - Juce\text - - - Juce\text - - - Juce\text - - - Juce\text - - - Juce\text - - - Juce\text - - - Juce\text - - - Juce\text - - - Juce\threads - - - Juce\threads - - - Juce\threads - - - Juce\threads - - - Juce\threads - - - Juce\threads - - - Juce\threads - - - Juce\threads - - - Juce\threads - - - Juce\threads - - - Juce\threads - - - Juce\threads - - - Juce\threads - - - Juce\utilities - - - Juce\utilities - - - Juce\utilities - - - Juce\utilities - - - Juce\utilities - - - Juce\utilities - - - Juce\utilities - - - Juce\utilities - - - Juce\utilities - - - Juce\utilities - - - Juce - - - Juce - - - diff --git a/Builds/iOS/Juce.xcodeproj/project.pbxproj b/Builds/iOS/Juce.xcodeproj/project.pbxproj deleted file mode 100644 index c07c94a9f0..0000000000 --- a/Builds/iOS/Juce.xcodeproj/project.pbxproj +++ /dev/null @@ -1,2446 +0,0 @@ -// !$*UTF8*$! -{ - archiveVersion = 1; - classes = { - }; - objectVersion = 45; - objects = { - - 0F4BA87762766B98D5B58AD0 = { isa = PBXBuildFile; fileRef = 144F56FCF3DF9EC922765901; }; - 50933337E6C3CC5B82540F8B = { isa = PBXBuildFile; fileRef = 36A407F2BE4A625184B5CCFD; }; - 04CB2DA89A71A183CEFEB7C0 = { isa = PBXBuildFile; fileRef = 21E1DBFAB3FB75875EA35280; }; - CD59C8E60146B04575CD61E6 = { isa = PBXBuildFile; fileRef = 415BD77DF4B2F4760D138735; }; - 76890501626BFFF310A94F15 = { isa = PBXBuildFile; fileRef = BA97FEDA576503A21D971F1E; }; - 46151070FA7D3426EC35280F = { isa = PBXBuildFile; fileRef = 1AA8BE2D76E153874FB08197; }; - 983FCD60625A60993546F850 = { isa = PBXBuildFile; fileRef = 0877D5750D6F21C5231687CA; }; - 416D6F00E88DC74879B4DF2B = { isa = PBXBuildFile; fileRef = 7D85530D76756C33795ECCE9; }; - 9C709BC2F4F0EE60BF52FACA = { isa = PBXBuildFile; fileRef = 93006D32B18174D9FE0A5E9E; }; - 992F46189ABF711A047186A4 = { isa = PBXBuildFile; fileRef = 9349E14552FEA0371553E808; }; - 5C312E6678456C8293633E0F = { isa = PBXBuildFile; fileRef = 2AD64F53E12B20011B7A0DB7; }; - FB21B7E6A7CE55D3C0E3C37E = { isa = PBXBuildFile; fileRef = 59597FA0A88A08937801D198; }; - C1147D03F1F4D697CC30DD22 = { isa = PBXBuildFile; fileRef = 27C3C51DF2519B519B76E2EE; }; - C5CFF5508299C26380465290 = { isa = PBXBuildFile; fileRef = CB32D4EE59D5CA9DB12F944D; }; - 0ACCAC5ABDE686B0CA42BFED = { isa = PBXBuildFile; fileRef = 203AC66FFB20EAD2E7A594BD; }; - 2171BD82DA3A6744260CDE58 = { isa = PBXBuildFile; fileRef = E00781B15E47C9CB9E94869D; }; - 3C22C15ACEEF0454171D231B = { isa = PBXBuildFile; fileRef = DA868174D4D2059AC1BE7E71; }; - 6D421F7B7EE3A149389653C2 = { isa = PBXBuildFile; fileRef = 7CF036906034FABB44D2108F; }; - 4ED0A649C320BA53718501CE = { isa = PBXBuildFile; fileRef = D5D2FD212300E7D49ED74823; }; - 5D3EC9BA6BA37694CB371ABB = { isa = PBXBuildFile; fileRef = 7AE5295A472723B26537FAEC; }; - 4CF5FB501CB800D4485B08DB = { isa = PBXBuildFile; fileRef = FBB2EEF0E5EC5EB6F89E9066; }; - 3747D91BE3C6A2E641BB133D = { isa = PBXBuildFile; fileRef = 74AD63909D3EE09D63256A76; }; - 4CFEE72495007A62F78C1B8E = { isa = PBXBuildFile; fileRef = 5D6E837F124C347B3C1CAE23; }; - BF7E18A49525915A0E1928C5 = { isa = PBXBuildFile; fileRef = 1511366CAD437989DAA30CF2; }; - 6DC6DEEE8A1A6092830A79C8 = { isa = PBXBuildFile; fileRef = D86718CE7E5DEF2071AC3D17; }; - 2862E190ECA33D2CE1458B51 = { isa = PBXBuildFile; fileRef = 9A8053936C35A19B9E98623A; }; - 0791EB173E6A9F959E692AA2 = { isa = PBXBuildFile; fileRef = E2A56C23BF2BB466BB273E3E; }; - 3B64EF7F57EAC5C51460059D = { isa = PBXBuildFile; fileRef = 5403C2A4DEE7B9B3B34235F8; }; - 16D537EB6D3BFAB3AAB54B11 = { isa = PBXBuildFile; fileRef = 3988438157D4B75177703F8A; }; - 0C22446F12486AD139A640CB = { isa = PBXBuildFile; fileRef = 6841D6AC927D02113F3AEBD4; }; - 95CF50482DC7139FCB40EB1C = { isa = PBXBuildFile; fileRef = C7DB1BB9AF7FE0A2AA38D767; }; - D66B0BC466522CD4C5F1335B = { isa = PBXBuildFile; fileRef = EAFD034BB1721BFBF9A3795E; }; - F20E960CAA933102A0F0225C = { isa = PBXBuildFile; fileRef = 5DB9D903D24646B0C2356A5D; }; - 9CDC242CC037F1D00BFD6157 = { isa = PBXBuildFile; fileRef = A1D687AE613A8B61EB63923D; }; - FB0C4D926F00644C6435F0B4 = { isa = PBXBuildFile; fileRef = E68EB4BC75216B5B56E3F937; }; - 3AA8CE85F8CEA9D4B8063E52 = { isa = PBXBuildFile; fileRef = B457515938E7141D5E79B671; }; - DDD4E27CA174F32412F71093 = { isa = PBXBuildFile; fileRef = 891E0B1AD09C0EA44297E0F2; }; - DC89A29962945F69CE38658B = { isa = PBXBuildFile; fileRef = 0731C60911E6985F51325484; }; - 78E7EF1759BA0AACCCE37533 = { isa = PBXBuildFile; fileRef = DF3833AF6E38E55218FDF23F; }; - 573BF08B2CACCC317F3D7603 = { isa = PBXBuildFile; fileRef = 0D3A77572C7256CE4C115FD7; }; - 8376B6E3DB141DDF5EFF6327 = { isa = PBXBuildFile; fileRef = 78D29BB5C76CCF7C21EC0DAF; }; - B579C891B16F4B219CD751B5 = { isa = PBXBuildFile; fileRef = 01712FF0A160032FA1DAA8C2; }; - 43FA6F0FD4DDEBA6427E730D = { isa = PBXBuildFile; fileRef = 50FAF92038EBD0127900AAA1; }; - BAB3164372A6C31A1A7DA58F = { isa = PBXBuildFile; fileRef = FCBB1DC14311D099809B21F7; }; - D71FEEEA440682B04E024BB7 = { isa = PBXBuildFile; fileRef = 2EBF36FAAF019B6F811D1C84; }; - B331EE2C23176373F2D52C1E = { isa = PBXBuildFile; fileRef = 1C8211DFB558D740EF4B173A; }; - 79D8E372BA77018BDA956D92 = { isa = PBXBuildFile; fileRef = DA4820727D6DDC75561A262C; }; - 3688819F98EFF0AABDD79029 = { isa = PBXBuildFile; fileRef = 3110B983ACE956D6A24F8C8C; }; - 84F9FCAE9DF003DC6FC3C941 = { isa = PBXBuildFile; fileRef = B6E20AE45813C0CA9B1014DD; }; - E1046147432EB115A68D6C43 = { isa = PBXBuildFile; fileRef = AF47BC3796A74CC15A192E8B; }; - 5CEE2D7E55DA99C1D310CDC2 = { isa = PBXBuildFile; fileRef = 9C5C0BCB2A298160025B15FC; }; - B154245927BCB4F87ABEAF17 = { isa = PBXBuildFile; fileRef = AB554593165FE8C8B40F4447; }; - 52ADF1419B058963EE32B7C3 = { isa = PBXBuildFile; fileRef = BC2A50B0B01128E394E9DE9C; }; - 31D36C32211754E793B9FF81 = { isa = PBXBuildFile; fileRef = D141C024A3F5A6748B0E9ED7; }; - 2D46CF2B0350A442E08EC355 = { isa = PBXBuildFile; fileRef = 08EBC2152F45FB2B839FCCC1; }; - D1407BB28C169F5E1CAC3CC7 = { isa = PBXBuildFile; fileRef = 096CF2243648F17E1BF5421B; }; - 07E6E11A658930554FF0C56A = { isa = PBXBuildFile; fileRef = ED5966B95F865C586A3CE08F; }; - E8DFABC1603D55B97429A8E4 = { isa = PBXBuildFile; fileRef = 35668D8EEA19957C6C9AC83A; }; - 1F905F44E5FA23A2D5CCDA0A = { isa = PBXBuildFile; fileRef = 4F22276689685D839BD252EA; }; - 4AB5E55BDF79028F82F83D8E = { isa = PBXBuildFile; fileRef = F77C9170829579FABA5679AD; }; - 9D2D1BA65C27BDA1F7C44769 = { isa = PBXBuildFile; fileRef = 70E5409425A76782B6188B31; }; - 43B3119E2F1B559263AE956C = { isa = PBXBuildFile; fileRef = 9BD379D2F7995BFE0B3E5369; }; - 4A7952C0A4EEE13296EEED5E = { isa = PBXBuildFile; fileRef = 1809284DD05B56309D7EA24F; }; - A230949FF8848D5E923F9083 = { isa = PBXBuildFile; fileRef = 5D27EE211D9BFF6A58C4DC42; }; - 11162E9812CFB0E738A7E2E6 = { isa = PBXBuildFile; fileRef = 4DF9D333038A442870668D31; }; - C682BEA7DB70FDC7C6BA2D6E = { isa = PBXBuildFile; fileRef = D66C00E06B06EAD3B5257DD6; }; - 6A53DA58B55E2DE7241BF2C8 = { isa = PBXBuildFile; fileRef = 4555F03DBD059EEDECEF9F85; }; - 0FF71870483AC46D5B7AC5B0 = { isa = PBXBuildFile; fileRef = DF6CAC67C0F2D379BDA03062; }; - FA01B3EABA192AE041D4FE4D = { isa = PBXBuildFile; fileRef = CFAECB6551F48A1695DEC243; }; - 43047D78351C2D7047F4F81E = { isa = PBXBuildFile; fileRef = 0AD73B8EA0D60D9927B36624; }; - 5BF44F954E56B7C2DD15EAEA = { isa = PBXBuildFile; fileRef = 18B170E96511BBA1019C66F8; }; - B14EB5F3829CA26DA906D5C0 = { isa = PBXBuildFile; fileRef = 8D2DE1F3CB15D003C90042E7; }; - D75943C2812EA68CA74D9FDA = { isa = PBXBuildFile; fileRef = CEF91E0C9CBB3EBFF9500FDA; }; - 6DEA630BFFF638BBBC8FDC00 = { isa = PBXBuildFile; fileRef = E3C548295935D26121D5D823; }; - 708060ED04ADF4E4FB8E2171 = { isa = PBXBuildFile; fileRef = EAFD8FAF365DFB32DC42D0E7; }; - 12E3CC31875A202D6B30F778 = { isa = PBXBuildFile; fileRef = E9E692847C14AD33CD5FB40B; }; - CF51988743ED2CD823DFE0B5 = { isa = PBXBuildFile; fileRef = 7AE9331938549244E27A5D0E; }; - 4AAFC135B170CF02A40F0D51 = { isa = PBXBuildFile; fileRef = 4CBD301A08E9C3762F861FC3; }; - 659D9CD58B6914EB420E6AEC = { isa = PBXBuildFile; fileRef = 31D985CB8646B78460E9D5A7; }; - 55737E2F1817DE642AA7DA05 = { isa = PBXBuildFile; fileRef = 1617348BBF5D103619D76911; }; - 6D2C50B0A69855A7F8C062E7 = { isa = PBXBuildFile; fileRef = B80F8CD026033ACCCE11A1A4; }; - 70EE7A1273945B62B013DB43 = { isa = PBXBuildFile; fileRef = AE68ECB6E063BD8D4984C0B3; }; - 9DF800566462E24A14246EAE = { isa = PBXBuildFile; fileRef = 843A7B398E9411F0AF28D65D; }; - 89F0DA39878F8A41E60B8C67 = { isa = PBXBuildFile; fileRef = 9CF077D3ED7B7B56F351AAF6; }; - 12E1174518BE1063E506CE5C = { isa = PBXBuildFile; fileRef = E594F70DC2F292FF1EF65CB6; }; - EC0B67A801316FBA35A04356 = { isa = PBXBuildFile; fileRef = E2D07ED5E1A4A460E0DEF59C; }; - 86EDB250B9F5C8FF3045ADEB = { isa = PBXBuildFile; fileRef = 1F2CFBF13ADCA05C0DC2D7D4; }; - 8F7CC7DDA1E07A392CAD82A3 = { isa = PBXBuildFile; fileRef = C818B558D6D5B62A80621281; }; - 621B7B0B518E63E69122C13E = { isa = PBXBuildFile; fileRef = D0D9267E200BD462361810F7; }; - 97982824572C18827047D92A = { isa = PBXBuildFile; fileRef = E13F33E386E1A0D5FC546521; }; - 927E7250FCE62E838599DF83 = { isa = PBXBuildFile; fileRef = 621B3A4B154182F69DDE2989; }; - 9AE6891C35CE161CB1707B4B = { isa = PBXBuildFile; fileRef = 2FFF9AFE4BD9437CE096E52B; }; - 06994A713C38F415C4E8A009 = { isa = PBXBuildFile; fileRef = 18EE6576A9ED098632CE5155; }; - 98F737B7459895BFCDC7965E = { isa = PBXBuildFile; fileRef = 8B1C747E63EEF036AD9AF3D8; }; - 7033A0968B1C81A821CCC296 = { isa = PBXBuildFile; fileRef = 1C3D15546065C1A9AA5AA0C6; }; - 14E5A383C70731C60911E698 = { isa = PBXBuildFile; fileRef = BA415BD77DF4B2F4760D1387; }; - 3A10CF09C41F8F55B7529E68 = { isa = PBXBuildFile; fileRef = 6930E651AEE97FD47E185EC9; }; - 5482BFF6CAD3B6CDFB09FBA1 = { isa = PBXBuildFile; fileRef = E927E4A58A84B21AA6B38A44; }; - FC3299637EACD8B5CBEC391F = { isa = PBXBuildFile; fileRef = 09AE2C7E2573204A7A35452B; }; - 5C245C1A77B96A1425323A1C = { isa = PBXBuildFile; fileRef = 9846D4523B3425BBB04107EE; }; - 05DFD3AF416CA6FDDDDC4C74 = { isa = PBXBuildFile; fileRef = F750738F398054AB38250780; }; - 78DEB64D3F38269C62EB1C7F = { isa = PBXBuildFile; fileRef = A3CB18F915377AC3FFA2E5F4; }; - DA5DA96B9D1A26342D9278B6 = { isa = PBXBuildFile; fileRef = 04F48B09426293224576DA9A; }; - CA49EF43B1478B146ADBBF62 = { isa = PBXBuildFile; fileRef = 346CC505FAFEE9451040108D; }; - FE6F6A4946B7E4F6C9F44C4A = { isa = PBXBuildFile; fileRef = ADC16C18C8237A7F8E35E37A; }; - 28254F1E6E686CF6F29AE56A = { isa = PBXBuildFile; fileRef = 0D3FA24FF38399E0EDA80860; }; - 9EA7FEF4CAD2BF46DD3596DA = { isa = PBXBuildFile; fileRef = 7330A9643F50DE8BEACDBB61; }; - D1400B3D9D07FA9E8BAA21CB = { isa = PBXBuildFile; fileRef = 1BC6C010045A06BDB4C684F6; }; - 716823F3B5437A20FCADA50E = { isa = PBXBuildFile; fileRef = 71B6CE03D6DB07BB293C8206; }; - 7CAB8DEBF6B93C845AEF11E5 = { isa = PBXBuildFile; fileRef = 3CE16163A43A6E67428385EE; }; - BBE24BE654237ACD381A97E4 = { isa = PBXBuildFile; fileRef = 6BB68B37C7B0BB4DA8326647; }; - 6F38AFBC749040844076FD4F = { isa = PBXBuildFile; fileRef = 76E073B2A3F59A3ACD20CC87; }; - B35BFCD19569A9F91A3CCCF5 = { isa = PBXBuildFile; fileRef = A4E66D702028A22D8157241C; }; - 7C7B33BC2E2F245C8AFC9879 = { isa = PBXBuildFile; fileRef = 53EB02EEDF5E7971EAB9E795; }; - 110285CA29B28DDC018D2BF0 = { isa = PBXBuildFile; fileRef = 37E48B8F8AD2BC448E5935C7; }; - ECF05C68A4DF71A10F8E8BA4 = { isa = PBXBuildFile; fileRef = D317D4B5BA40A5754EE56F47; }; - 50CE14D31986BA1BC81B0869 = { isa = PBXBuildFile; fileRef = BC209F6862D5923B8F9E3080; }; - E421EC41CB492F58BF1D9C4E = { isa = PBXBuildFile; fileRef = B60FE8BFA252E3EF2D60B77A; }; - E3CDB77EF18430879925E6A3 = { isa = PBXBuildFile; fileRef = D3B56583D4F60069296DB959; }; - 55E5B76FB1649B60DBE16B89 = { isa = PBXBuildFile; fileRef = B1DEB4E0BBFE7E2D052165BD; }; - 6D1A45ED50BAFAE4F4E403AC = { isa = PBXBuildFile; fileRef = 102BAE57AAA43A7685FCBD9A; }; - 70D519927F38B21BE572201A = { isa = PBXBuildFile; fileRef = 730CAA344708954DE271072C; }; - E4EFC5F8828526CE4518F1E6 = { isa = PBXBuildFile; fileRef = D54308F25AEE3110A166F2BE; }; - 835F7FDCAD027B4E96AB407C = { isa = PBXBuildFile; fileRef = 9A9D8C524A070162517620E5; }; - D027C0131892DA25CE716DDE = { isa = PBXBuildFile; fileRef = CA1B41922D8094982F967DBD; }; - A65EBA33900ED91BE522DBF7 = { isa = PBXBuildFile; fileRef = 29DFAA512171B967D687A945; }; - 0D91D36C2195315FE534F304 = { isa = PBXBuildFile; fileRef = A418FC3BDDBF1CE9F2903490; }; - A1E82F70796B8611D7323247 = { isa = PBXBuildFile; fileRef = 949854EDE6B5B16CEFB6108F; }; - BC1856E0B20406DDCE5EBF94 = { isa = PBXBuildFile; fileRef = 8A67B45A2BA1D19D1AC43315; }; - FF3A28F88174E10CB478931E = { isa = PBXBuildFile; fileRef = 912C419859C9C56BC96AA6FB; }; - C39AE37828718E9A45589A24 = { isa = PBXBuildFile; fileRef = 5ABC6616473BA4791AA8101E; }; - 4400B0595B35F919291C1A01 = { isa = PBXBuildFile; fileRef = 29A79478AE8567250972ED43; }; - BB1DAC0CA8D7B3DEEDEE76C6 = { isa = PBXBuildFile; fileRef = 7F5A271EAB78C7CF8B2341DE; }; - 56F347211337C9229BA06AA7 = { isa = PBXBuildFile; fileRef = A00C6593BFBFA76043BC0C06; }; - 75EAEC54BA3A8BD7F317C7E4 = { isa = PBXBuildFile; fileRef = F1A33029252D29A6ADF171B0; }; - 5FFFA4B8857D64FE36B4B125 = { isa = PBXBuildFile; fileRef = B1E8FF009812F29C2620E6BB; }; - 1D406F33F6B9FE7F92A71438 = { isa = PBXBuildFile; fileRef = 921B616E2229AEB6390D2B57; }; - 806FF2617B7CC21609927A11 = { isa = PBXBuildFile; fileRef = 07191E1A9805FA6E6F253FF6; }; - 9AA76460DA7D34CE6A69E2B1 = { isa = PBXBuildFile; fileRef = 45E5EE9E0173683D721FABDA; }; - 4E81BC4A50CF1883F529E152 = { isa = PBXBuildFile; fileRef = F8FCCCE06D31FEF697FCD80D; }; - 8FBB6BF0C5406E1BA481CFEF = { isa = PBXBuildFile; fileRef = A6AD7357F905309D1B461EB7; }; - F5F3F25D9F377128DC74D95B = { isa = PBXBuildFile; fileRef = FF046140CCF1EDB0DFF80178; }; - C64A2BF05224582134872415 = { isa = PBXBuildFile; fileRef = A95F42C5CB0C2E5052B31568; }; - 0A9C9486A6B31F21B1472D2B = { isa = PBXBuildFile; fileRef = A31221E2A50CCE9DF06B5F4B; }; - ED9F9A6CB4F8BB7FEA5384B7 = { isa = PBXBuildFile; fileRef = 3D8B0E86C98E2EE49AE868C8; }; - DE0BAD16BD5A6568EB4D228B = { isa = PBXBuildFile; fileRef = B116FEC4D544DB8E38CB571E; }; - AF6FEC311B9FDA112CEEBE03 = { isa = PBXBuildFile; fileRef = F1F65C9E7394E04E073A57A4; }; - 3795ECCE9D98F872F5BCAE64 = { isa = PBXBuildFile; fileRef = 993C90B10202DA78FA31CC58; }; - 723CFE5184B20B12ECABEB41 = { isa = PBXBuildFile; fileRef = 079CFB5DEF6F2B71E2910A22; }; - DB6098F004F6D7F19605002E = { isa = PBXBuildFile; fileRef = 143F36BCDE7A65EBA33900ED; }; - 757AC60B8BA481E592FFE6FF = { isa = PBXBuildFile; fileRef = F2C653BA4552E6838DFA4F87; }; - FC659F15D298558D9553B643 = { isa = PBXBuildFile; fileRef = D41423657626ACA672A9DED9; }; - C090ACD462D9431C8B64CAD1 = { isa = PBXBuildFile; fileRef = FD004BDDCEDB7E324983F70C; }; - D894FBF1CF62C5F126213616 = { isa = PBXBuildFile; fileRef = B92ACF027E63D1C788DEC893; }; - 3D80F7AE3D65EE0BB607F252 = { isa = PBXBuildFile; fileRef = 218D7D73C086866E587FFD01; }; - 2F33C392A0DD205A865955DE = { isa = PBXBuildFile; fileRef = 1DDE0A8E4C5857715D9B5FAE; }; - 36615B7CB2BE96B624C4ADC0 = { isa = PBXBuildFile; fileRef = 6AACD2FD239E39F87B666C6F; }; - 4F2AAD8318402F8C23A9EA54 = { isa = PBXBuildFile; fileRef = 9E4B3BAB9BDB06B60D28DF48; }; - E6971F06B78AE76C35E1A19C = { isa = PBXBuildFile; fileRef = 3D74B30C63465C32E26D8E33; }; - 6629D535AE1ABE35A0D53C69 = { isa = PBXBuildFile; fileRef = 944BC51C440C167C5B2A23E3; }; - DD4599D0A8117B025B477DE1 = { isa = PBXBuildFile; fileRef = 067D84F9291770240D1AB5B4; }; - E064E329741F36C329989203 = { isa = PBXBuildFile; fileRef = 441257DD380138C03568FCBD; }; - 61E659ADBF9D832ED8F24540 = { isa = PBXBuildFile; fileRef = 2886656DF7ACC9DDC888827F; }; - 9379C833B875207E5DFC5A3F = { isa = PBXBuildFile; fileRef = 82DFF1BD3665DC32672FCCE8; }; - F1A6C2E3226F87860BFC4EBC = { isa = PBXBuildFile; fileRef = D39C0B853C3EBBBD11E7C71E; }; - 144872E56AED1981C0973B24 = { isa = PBXBuildFile; fileRef = D31704DAB806B6AF3ED52DC7; }; - 95648DF5676EBEF57009D09A = { isa = PBXBuildFile; fileRef = 243EF1A31A779413BC2D5B98; }; - 2FE59D80851A0A392EF2F923 = { isa = PBXBuildFile; fileRef = 36BB6DDF702EC9B3DAC851FF; }; - 621D2E6CDA267030405166C2 = { isa = PBXBuildFile; fileRef = 9DA988F1D7CE29E0DFED7EF0; }; - 90347B7C32ACE8A11FC1B708 = { isa = PBXBuildFile; fileRef = 072D77C3834B1B3FB77F277B; }; - FAC87D81FE5168E37645A113 = { isa = PBXBuildFile; fileRef = 1C3FFBA02AE51EDD72A6250B; }; - E5BB4B5EBFE206E09D0E6E10 = { isa = PBXBuildFile; fileRef = C45E7E6B6E45DEFBF80940DD; }; - 1906C642BF6CA67821512855 = { isa = PBXBuildFile; fileRef = ECCBF2452804ECB2D5B4BC50; }; - 6F41A81F269BCBB912C6AFBC = { isa = PBXBuildFile; fileRef = E2C948680009D1744CEDBC25; }; - 7BB45CEB3B0913F98FC817F5 = { isa = PBXBuildFile; fileRef = 0984A4BA00D6AAFB463657F4; }; - F41D6061AD873C619D7436FB = { isa = PBXBuildFile; fileRef = 3451124EC2809C9BB591DF93; }; - 1FC0972EFBE39C7CDEB73A3D = { isa = PBXBuildFile; fileRef = 84311C1F5A8ACC8DF4D6FF34; }; - E63E64BFF5FDCEF5B53AE304 = { isa = PBXBuildFile; fileRef = DED871B1C7458B15DE7C9234; }; - E162F83B5F038092E2C70FC0 = { isa = PBXBuildFile; fileRef = 11F1658A055C45FE824FD2DB; }; - 710BF477DE534CF18BD68959 = { isa = PBXBuildFile; fileRef = 4C3C3AFC3D97C1378B7D7435; }; - E5DA150E966B948C4CB4EFDB = { isa = PBXBuildFile; fileRef = 0A20E7E561633610A76A34AB; }; - E96B477EB51FC152AC2EA6BD = { isa = PBXBuildFile; fileRef = 9C1D5CDA61FB51F657DA8B22; }; - CF36EF39EEAB7A4744C5D310 = { isa = PBXBuildFile; fileRef = 3C8C1AAF32DFECB89EB83271; }; - 372B6FF28C49018F5191C517 = { isa = PBXBuildFile; fileRef = 1317F0BE5EC80371F744967B; }; - D9AAB4AE220010CD526C87D2 = { isa = PBXBuildFile; fileRef = A34C0E63D41CFF5E55FD1D9E; }; - C732ADB05901619B14F1D6BB = { isa = PBXBuildFile; fileRef = CC04F253CB70B20B774801A9; }; - 075D5995E41FDD670ED35E17 = { isa = PBXBuildFile; fileRef = A5AAF4475138358F33D4904A; }; - BBE02E8719411C8A7D43A401 = { isa = PBXBuildFile; fileRef = 8AEF18EE9B12D4677F96B709; }; - 35E3B9684ED968BAC0BC8021 = { isa = PBXBuildFile; fileRef = 2FFDC7636EFC2D7F74590A31; }; - 736AC4A9DA6515B92644FA02 = { isa = PBXBuildFile; fileRef = 929FEA5458430B7AE23BBB46; }; - DFFBADCBC9C7E31B391BA560 = { isa = PBXBuildFile; fileRef = 090907E4FE95EE2B11C1A0E1; }; - A24A946371D566E02BCC95A5 = { isa = PBXBuildFile; fileRef = 2E4A5F7128313C23AD0356F7; }; - D390CCB01BD9BD132F04E0A6 = { isa = PBXBuildFile; fileRef = 87E57C8F3448D615271CD9F6; }; - 26E2FB6533B5700FA9780E00 = { isa = PBXBuildFile; fileRef = D7772BC5E4E455AE2916A87D; }; - AF5593DEC14D551C38CCB50D = { isa = PBXBuildFile; fileRef = 6C33842C52B61407CACCA858; }; - 0B830401EA0E883CCAAAC696 = { isa = PBXBuildFile; fileRef = A24990B395323FBAC0BEFB5A; }; - 3897B36CC1D89C5755CE1B90 = { isa = PBXBuildFile; fileRef = EF18D0073BE50E572ADD9A1C; }; - C55B00378E784DE4B428E934 = { isa = PBXBuildFile; fileRef = D36EFC4421056277BA87387E; }; - 82A9E0388C9BF3A698DCEF69 = { isa = PBXBuildFile; fileRef = 41AF663E626B8F6D319B9966; }; - 7F6749BFCF2F134468825D45 = { isa = PBXBuildFile; fileRef = 3EC800323255128D69539BAE; }; - 277CF246D5EE48868E38E625 = { isa = PBXBuildFile; fileRef = B7251E779500BA77F5522CC7; }; - 4D285D9D3F5955F2FD574D04 = { isa = PBXBuildFile; fileRef = EF50EEDCAB08F842AB8DE6DA; }; - 30F9B53BD00228406F6477DF = { isa = PBXBuildFile; fileRef = 2E03ADF975A126C1F2F7B667; }; - 759633D5CDB35874FD37DD7F = { isa = PBXBuildFile; fileRef = ED3ED8389001D55FBDCF1087; }; - E0F309D93E9A7F0CC71C4503 = { isa = PBXBuildFile; fileRef = 835CC2A1E67E7B19E41F8FBD; }; - F246AADF8E531BC2244A1D38 = { isa = PBXBuildFile; fileRef = FF052647D2EFA985D05C8E83; }; - F78940DAEB8BE98A9AA4B0BE = { isa = PBXBuildFile; fileRef = 504730C9B9F60192C2577979; }; - 00FE118356919D0BA97AE853 = { isa = PBXBuildFile; fileRef = 85B7BCACB40E02815844F71D; }; - 18D8A96CCD34E41A5E162AD5 = { isa = PBXBuildFile; fileRef = A54BC72C899A2AF82E1E37F8; }; - CEB8A9B9A37EBBA79A6478D4 = { isa = PBXBuildFile; fileRef = 582DCC2F948F1DEA0D450B0D; }; - D6D48B2CC53FAE2BD126B0DE = { isa = PBXBuildFile; fileRef = E0694CD7C814AA99E5A84799; }; - C384A89F786FDE8426F657D5 = { isa = PBXBuildFile; fileRef = 62967D33232C5A86D88084B4; }; - 3D324F656EEF8F1FB2B437AC = { isa = PBXBuildFile; fileRef = C17613C202D8E1C366F21D3C; }; - 645AF66C048A4815F5A8ECDD = { isa = PBXBuildFile; fileRef = 2BFC199D03DEEC329D6A7CB1; }; - 38EFE824E76B3BB99824C265 = { isa = PBXBuildFile; fileRef = 32EA297812F1C88B42099501; }; - E23C5C51305DC7CE30E4DAB7 = { isa = PBXBuildFile; fileRef = CB649686575473223C859482; }; - 60E1742796432D042C59B9B3 = { isa = PBXBuildFile; fileRef = BA17B023595ECD8166A231D1; }; - B92F53BABB6A9AC8348B001E = { isa = PBXBuildFile; fileRef = 78068AA59A5DCFCCAAEA79D0; }; - EBC3AA015D24C62FA0307F51 = { isa = PBXBuildFile; fileRef = 61D06B694603F608CDA0703B; }; - 803FFCA3DAC0C004A80143B4 = { isa = PBXBuildFile; fileRef = 91CB423DBC5F3CBEDD9CF2EF; }; - F0556B3AD9D388177E26B90D = { isa = PBXBuildFile; fileRef = AF66A9951377E2D04C54CADD; }; - 0558FFF11AED944C6B3E5FB5 = { isa = PBXBuildFile; fileRef = 2ED8CC539A9D9BE611F67A9A; }; - CF73FAC91E319C464F07C966 = { isa = PBXBuildFile; fileRef = 29BC53FEE9BC27F44534C909; }; - B6D3EDA0F2E3516F3922F23F = { isa = PBXBuildFile; fileRef = 312F208B501E0D7764C6B613; }; - E7C9FAA5F8A4AEDAD8A8CC1D = { isa = PBXBuildFile; fileRef = 9D3F1BAB1D48DDECB9F35916; }; - 084C9F2D4F78134CB1EFE676 = { isa = PBXBuildFile; fileRef = 1B170F70AF8AA0A39074F671; }; - 4DAD08CD3A688747C9CA237B = { isa = PBXBuildFile; fileRef = 0F1C5770B363EF7DF64A876A; }; - 60FE8BFA252E3EF2D60B77AD = { isa = PBXBuildFile; fileRef = 6619D27E74F623B1E8CE8F71; }; - C592CC923C5495467EF05D48 = { isa = PBXBuildFile; fileRef = EAF0F2EAB230F7539B91A7FB; }; - E12096E92D3D43DD7926E063 = { isa = PBXBuildFile; fileRef = 7904C2A3C52959748C46D54F; }; - F4567E6C9ABFB13FF24797DE = { isa = PBXBuildFile; fileRef = 94D3EBE6E0D9AFE555226A88; }; - 0B0996F97D926609C23E5F90 = { isa = PBXBuildFile; fileRef = 67F4F9E1F6B9B4D1C1A668E5; }; - FB5900FB9E071EDC2542B846 = { isa = PBXBuildFile; fileRef = 6E4DF7338364956EF42C4493; }; - EDE605169F0AF038FE5097B3 = { isa = PBXBuildFile; fileRef = 3FD3FA96955DD648494E76A4; }; - D78C3DA6505CE8CC3F17C070 = { isa = PBXBuildFile; fileRef = 692A95B19D9C32094A1E07B9; }; - B23EE989379EB2F075D6F587 = { isa = PBXBuildFile; fileRef = 058702E8697667AEA38254C1; }; - ED7C62DE10250FCC07CF17B2 = { isa = PBXBuildFile; fileRef = 6FFB38088C11BAE68368A3E7; }; - 1535D49C24E8A9FA5F6DCF6E = { isa = PBXBuildFile; fileRef = 59B2FFF817679AEA84375E1B; }; - BBCA4C01CEF1EDA75625D6DC = { isa = PBXBuildFile; fileRef = D9B3C04F8EB4228DD59002E7; }; - 136FB9588C834E6F4A1EEBFB = { isa = PBXBuildFile; fileRef = 17C3AF03FF7AE88AE0C73311; }; - 274415D1C0AE9BF56FAAE791 = { isa = PBXBuildFile; fileRef = 4035C867821E9B5887AA25FB; }; - CBAD975785BD26A0DA9417B6 = { isa = PBXBuildFile; fileRef = EFA58F646B69B227AEF14140; }; - 2A8F78D412AC7EC0C2998A1A = { isa = PBXBuildFile; fileRef = 06B06C420341B005DFF951D2; }; - 2DD969525DEF4AD408E9BB59 = { isa = PBXBuildFile; fileRef = AD7A1C2C82EE714EBDD52EFC; }; - 059B694C912BE81023D5240D = { isa = PBXBuildFile; fileRef = D4211E697F43821CDBCE4F24; }; - 4387EB80C5795FACBE753A7F = { isa = PBXBuildFile; fileRef = BE5DCD603F7E21A1F66CDF33; }; - B2C41D39730EB3AC75D55949 = { isa = PBXBuildFile; fileRef = AE363A1FE2F403F7CE2FDF7F; }; - F045E8F977C00016F6EBB1B7 = { isa = PBXBuildFile; fileRef = A10A63E2098A85B5CA9265B1; }; - B89FE5AB44DDEBCC050F8D7A = { isa = PBXBuildFile; fileRef = 3F60563DEC7941B88163A50E; }; - 2EA320797BD7D2137F133681 = { isa = PBXBuildFile; fileRef = 39C0783ED515AAA82F9CA37F; }; - 1008A8A446B9BCADBB853056 = { isa = PBXBuildFile; fileRef = B3F5E7A708350F72E7C77153; }; - 0FB1AED6E5AB5CEA95E70950 = { isa = PBXBuildFile; fileRef = BBE79494A818EF83F52A4C7B; }; - 103A3B11DFE35E9088ECE933 = { isa = PBXBuildFile; fileRef = AE5A7EC70F288E7EA682081D; }; - DAC7AB8D9EA70D99A1C1287E = { isa = PBXBuildFile; fileRef = 7A039686F4F852E26936CA53; }; - B3D08D9E24CC369E4838E6FF = { isa = PBXBuildFile; fileRef = 868E43A4BB7015579789E4F8; }; - 15932C8039A59B0431FBB93E = { isa = PBXBuildFile; fileRef = D99C977ACCD09262F06F6624; }; - 3BBC410C79D2F53D32ED7466 = { isa = PBXBuildFile; fileRef = AD655AA04981173716022D8D; }; - 88A4D0443DFD6BA1A1B32AB9 = { isa = PBXBuildFile; fileRef = 21B2342B75097AB93CFF7E97; }; - 06F1BEB9AB97F33305B8F816 = { isa = PBXBuildFile; fileRef = 7A51D8B81F390A4CABF25C73; }; - 6CB4FA2797FBEA5C4C342EED = { isa = PBXBuildFile; fileRef = 76DB94CC776536F5D05B9445; }; - 150C16E65ADC7E3359C88510 = { isa = PBXBuildFile; fileRef = AA698DD5A82F91CF84A29666; }; - 9C547F4DC4FC50F9C3382ACE = { isa = PBXBuildFile; fileRef = FABA493FEE07E6373DD8EB41; }; - 5D1B2A14239B0351261D832E = { isa = PBXBuildFile; fileRef = 595EBA8A689DA899986314D8; }; - 0AFD6B2B694302A62C7C9DD1 = { isa = PBXBuildFile; fileRef = EACFC12E665283EB7926E9EC; }; - 3CE21931FC5A59ED7C23144B = { isa = PBXBuildFile; fileRef = BAE5CE629DF9D286293E616F; }; - DB7E8E984F9BEF4C84B887B1 = { isa = PBXBuildFile; fileRef = D4C499CB25F043FE667BC5E1; }; - 07645D91AFD4F8512ECD48ED = { isa = PBXBuildFile; fileRef = 4366712140FBEBEDBCBDCE9B; }; - D132232A4A404A7C08D10928 = { isa = PBXBuildFile; fileRef = E0A2C24581917DD090186333; }; - 83B488D64AB9828CFFBC55A9 = { isa = PBXBuildFile; fileRef = 3F3D429025A92B6F0FB6F8EF; }; - 8305C5E01476E99FBB1A0315 = { isa = PBXBuildFile; fileRef = 275F2210628D9E9968B1B258; }; - FF613B604C2333F4A4ACEDDA = { isa = PBXBuildFile; fileRef = 5DEA687D261C59CBABB782E9; }; - CECE3D66B19693E41850C30D = { isa = PBXBuildFile; fileRef = 5593DEC14D551C38CCB50D70; }; - DF419EBD05F13A0D2073D47A = { isa = PBXBuildFile; fileRef = B8E47498C7C6D5ECF41F0EAB; }; - C9FB7884928BF0D6140AF881 = { isa = PBXBuildFile; fileRef = 9DC2C10B16A645EEB82220D8; }; - 5C9628DB3E0C0BA8809AE45D = { isa = PBXBuildFile; fileRef = EE5F18DF1DED7617C4A41FF3; }; - 724DA2BCA5ABC5772604C3B4 = { isa = PBXBuildFile; fileRef = B2BCE9DDC8F0F54CA3D913E7; }; - 035B1F7B1505ABF24455690E = { isa = PBXBuildFile; fileRef = 5249EFBE3B22E6FC1A7B6D42; }; - 3C71EA297D7418FEBB52F9DD = { isa = PBXBuildFile; fileRef = A257B76FCE9D594EAD41414C; }; - 7A86E411B55E15DA7AF1FE67 = { isa = PBXBuildFile; fileRef = 8280AA34B23B4D366711A9E7; }; - BD86381924AE45021246ABA3 = { isa = PBXBuildFile; fileRef = C9561A66310DAD5EEB4A9462; }; - 306AB64E97A05B800349E7E2 = { isa = PBXBuildFile; fileRef = B62991F8AEE7327BA8A5070F; }; - E7A5418175B23C794421441C = { isa = PBXBuildFile; fileRef = 013F753639A6350C8DC602AD; }; - 51F5844EAE455D51BDB17228 = { isa = PBXBuildFile; fileRef = 72524FE185FF48DC1F954341; }; - C99F35ABEC13F58C27C1D303 = { isa = PBXBuildFile; fileRef = BF5307F364AC9250D8625168; }; - 3D9B5EDBECAA680B0A067F5C = { isa = PBXBuildFile; fileRef = AA4823F2F2A78C43D7A039D0; }; - 724B03672FC7862B671969BC = { isa = PBXBuildFile; fileRef = 87A5A064CC3CD55BA5D7617D; }; - 8B31099030792C554BD51211 = { isa = PBXBuildFile; fileRef = 641638A0466CEC1BDEAFB476; }; - D04EEEC7EAE7C806E95ED41C = { isa = PBXBuildFile; fileRef = 7DB37383434F45D8A7B674C3; }; - 7EA440527972D6B7322EC307 = { isa = PBXBuildFile; fileRef = CB16B2438EDCC10C499645E6; }; - CB9FE1DA1AFE5FBA9FF06061 = { isa = PBXBuildFile; fileRef = BEB35C6173793C1CB7AB6311; }; - 26454A5DB5BAFD7901F17DA7 = { isa = PBXBuildFile; fileRef = BA58B49B820A47F6F55CDACB; }; - F41B46F970BA78762DCE67D1 = { isa = PBXBuildFile; fileRef = 930E58E13FC92BF70AC20EEF; }; - B7A8CF6F889840BED05C8C27 = { isa = PBXBuildFile; fileRef = 9113CDD122D2790E147A8CF5; }; - 3EBF23F390FC0227260CF7CB = { isa = PBXBuildFile; fileRef = EE56999A85AF18015C540183; }; - 1906FDEEDAE61C88A59BC271 = { isa = PBXBuildFile; fileRef = 189F69E0B926C73B654D6951; }; - F51142C2CF336FC4A4FAACC6 = { isa = PBXBuildFile; fileRef = AE9A7A0775FA806126A74E16; }; - 1021132FAC7870AC18C040DE = { isa = PBXBuildFile; fileRef = 4F5D1AA83981FBCD33CE234F; }; - 05C8FA821C64B69BFF8FAF2C = { isa = PBXBuildFile; fileRef = E6A7BFB0FCD17A9B133CDFA4; }; - 5E330E219B2D2944BCE95174 = { isa = PBXBuildFile; fileRef = FE6E3F911679B0D7547577A3; }; - 275FBC09BE58E708A73B88C1 = { isa = PBXBuildFile; fileRef = 8BCE60CBC91DBAAB089958A1; }; - 6DA99BA218FB45568258841C = { isa = PBXBuildFile; fileRef = 3F11593DC3A168A52FCC2DD9; }; - 32F1C95EDEE7722797B8CEE8 = { isa = PBXBuildFile; fileRef = FC2C82760E717788B5A6E691; }; - 029A0E8B44DC17211722677D = { isa = PBXBuildFile; fileRef = 42059626955C547DA6AD3196; }; - 4B4E17467BC41E2166549998 = { isa = PBXBuildFile; fileRef = 8F383A785B4876198C5B0194; }; - 9686F29C29D1C26E353DE68A = { isa = PBXBuildFile; fileRef = F3B50EE3939E9F16D13C3C7C; }; - 79B4C2F1C0CF592ACE8093C0 = { isa = PBXBuildFile; fileRef = 3A37CD82212075940421CE4F; }; - 88A87D28B3809665F28DC16E = { isa = PBXBuildFile; fileRef = 7F3EF672D07ECE3E13AAF267; }; - 6BDBEFD97E643E5BB27637FF = { isa = PBXBuildFile; fileRef = 249959E338D7750E56A9F2F8; }; - BC3C22F5350ED7433D303A04 = { isa = PBXBuildFile; fileRef = 58B70C726D186B4E770300BC; }; - 0B41EC4D7839F8CBCB8F9A0D = { isa = PBXBuildFile; fileRef = DCD09B6EF4A4A109DE01F152; }; - B420CD4B589C08EAFA6E3DA4 = { isa = PBXBuildFile; fileRef = 7527A5E8F4F39581159D3E5B; }; - D4A05D7CA67B6F0527C9BD81 = { isa = PBXBuildFile; fileRef = 1DBF9DAAD0690CB2CA4E9960; }; - 0D7547577A31512EDCEDC42C = { isa = PBXBuildFile; fileRef = BA561E64C6400CFB1DE013F6; }; - E2FDC7D3E3DC4C1423FA0C5B = { isa = PBXBuildFile; fileRef = 061B492EABD6B1C995D581A8; }; - A46B0025A68136ED993E0D85 = { isa = PBXBuildFile; fileRef = 50159A5B7A552A6C1EB557F3; }; - B99678E919BF547A3A3F5D6E = { isa = PBXBuildFile; fileRef = CDA5FCC51F6C1E84D7DC3274; }; - 5B714CDD0082419BFED7D2D4 = { isa = PBXBuildFile; fileRef = B14735381ADB00741166E330; }; - 2DD498313DA488A5063C4C1B = { isa = PBXBuildFile; fileRef = 09AE0882D58BE1715219556A; }; - 5B33FFE120A47EF42CBC05E4 = { isa = PBXBuildFile; fileRef = 0EB41C0AB478EE02D8C851F9; }; - 552D45FB250C62F86CD02A57 = { isa = PBXBuildFile; fileRef = FBE07C5CC622A5D36BDAB9E1; }; - 0E8E9829E95E32163F45482D = { isa = PBXBuildFile; fileRef = B07C853EB60D8D8691BC1B4B; }; - 6801797B247CB3A6890C0AB0 = { isa = PBXBuildFile; fileRef = 5D32C8856093B33438AEB758; }; - B0B82AB2D9B0950F67B11BEA = { isa = PBXBuildFile; fileRef = 8758E6857070D7E5406FDE3F; }; - 379B4A89E5403B57A2009E76 = { isa = PBXBuildFile; fileRef = 8E8BE2F1C182E418BBA6903C; }; - 6ED121D4FEE575408B9612AB = { isa = PBXBuildFile; fileRef = 03B9D3D9042E85BDD691325E; }; - 9ADE436BC62FB84E297C1CA0 = { isa = PBXBuildFile; fileRef = 13C661B79E1E9508512A6B21; }; - 03D534E5B18011C3E03CDD40 = { isa = PBXBuildFile; fileRef = F2F68E50F42BD0F124E89E2C; }; - 06E2ED69E9FAC199D559F276 = { isa = PBXBuildFile; fileRef = 59C46E289F86C80D4341EAA3; }; - 9801CCC32F01818B39CFD88E = { isa = PBXBuildFile; fileRef = FA82460758BDCB2DCCE1EAAA; }; - FE553DDF4F83DABF13DF4A2B = { isa = PBXBuildFile; fileRef = CE06EEED7426AA45C27B629C; }; - 68DB48B0EC9E5E37C6B5281C = { isa = PBXBuildFile; fileRef = 1D74C9567283836ECC70E48B; }; - 96E9017FBE104E9EADC586B1 = { isa = PBXBuildFile; fileRef = 40216CE846A54CE706131A23; }; - BA6C6EF4C88D49C640DA7BF6 = { isa = PBXBuildFile; fileRef = E646726910F110DC34DD1662; }; - 0B124D9CE361014F815A5958 = { isa = PBXBuildFile; fileRef = 9AF9F1C0D766D4F894E4A7B0; }; - C701E3FCB168A3B4A31C4242 = { isa = PBXBuildFile; fileRef = A404CD721E2A0F0CAE9326C5; }; - 04F6D85CCF26A7F6DE589876 = { isa = PBXBuildFile; fileRef = 32B7C3609BDA01AA09740139; }; - 62912A2DA2F01212517938E7 = { isa = PBXBuildFile; fileRef = CEF7210E311274F1DFAB6882; }; - 36D770FCDAC86084A495B96E = { isa = PBXBuildFile; fileRef = 755C440534C0EB494572B3F3; }; - DA2A4714F1A6957A4F2B8D48 = { isa = PBXBuildFile; fileRef = EE855319AF344A05C92580C7; }; - CE9A64287FCEF00DD2BA6AEE = { isa = PBXBuildFile; fileRef = FCD02A40985242A8A6648311; }; - 2AC6F3BFAAA21E21076A9F8D = { isa = PBXBuildFile; fileRef = 76E2084D2148068F9138A816; }; - B8DD4DB0BD1A6B38BBF92413 = { isa = PBXBuildFile; fileRef = 8273A206FB309671284959DD; }; - 1C0B1362E81C8B073BF0DCEC = { isa = PBXBuildFile; fileRef = 644FD6155385BC3AA270FB5D; }; - 63BEC07A51CB8E516B38ECD4 = { isa = PBXBuildFile; fileRef = 4A97C8D2FF6454DDD3AF4BE5; }; - C8F81E843F446868FAD88197 = { isa = PBXBuildFile; fileRef = B507B4A8712A54D7A8C03223; }; - 50D91A2EC0ABF894E612D936 = { isa = PBXBuildFile; fileRef = 23252E4C97AEFAE0C5EEAA77; }; - 82568CF438EF4C950E4A42DF = { isa = PBXBuildFile; fileRef = 81B36E7C56DF1A777AA04F71; }; - B2E9D0C534DDE9F96921A054 = { isa = PBXBuildFile; fileRef = 0EC7DE81A516F4130AC59557; }; - C8D06AE9C68A675A87DC9C99 = { isa = PBXBuildFile; fileRef = 5715BC14D93D61D71206FCB2; }; - FE2999972FE3D6E251DA6653 = { isa = PBXBuildFile; fileRef = 95F21C2733BD5932372E4157; }; - 8B2193898D3465B5995EE98A = { isa = PBXBuildFile; fileRef = 8E78623B2D21CFE68DEC0483; }; - 4FB3EE200AEA14C7218D7034 = { isa = PBXBuildFile; fileRef = 4D60F7F748CF6702D1E45960; }; - 81E79D9217773BF0E39F7812 = { isa = PBXBuildFile; fileRef = EF06213027EA3F7C54EE0F18; }; - 2A360CDF2B5A46B282CEA2C4 = { isa = PBXBuildFile; fileRef = 60F21CB42270ACE2241544A8; }; - 01FD07AB480226E84D52F591 = { isa = PBXBuildFile; fileRef = B4435D42216365FA97651272; }; - D8B9941A1375579D6CE7C1C4 = { isa = PBXBuildFile; fileRef = 599F5C47BB9B5898E0E88CF3; }; - 0DE731ED3EC994B9227C2741 = { isa = PBXBuildFile; fileRef = 4BE2727CCD2CD7603402C8FE; }; - A124FE5709D9324B5BAFFE53 = { isa = PBXBuildFile; fileRef = A618FC3255ECE14EC9259E6B; }; - A84A5CA4654AE87192A6A096 = { isa = PBXBuildFile; fileRef = A59A5DCFCCAAEA79D03C2B27; }; - 55EDB4D9B702B469DB4655C3 = { isa = PBXBuildFile; fileRef = ADE5F12AA5AD969E2C7002B3; }; - 389351359BA78C682E1931A6 = { isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libjucedebug.a; sourceTree = "BUILT_PRODUCTS_DIR"; }; - 144F56FCF3DF9EC922765901 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Application.cpp"; path = "../../src/application/juce_Application.cpp"; sourceTree = "SOURCE_ROOT"; }; - F6A490BA93AC3558E9A6FBB0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Application.h"; path = "../../src/application/juce_Application.h"; sourceTree = "SOURCE_ROOT"; }; - CB9766F7A9C612B326D808CB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ApplicationCommandID.h"; path = "../../src/application/juce_ApplicationCommandID.h"; sourceTree = "SOURCE_ROOT"; }; - 36A407F2BE4A625184B5CCFD = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ApplicationCommandInfo.cpp"; path = "../../src/application/juce_ApplicationCommandInfo.cpp"; sourceTree = "SOURCE_ROOT"; }; - 4E74130693EE120D905818AC = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ApplicationCommandInfo.h"; path = "../../src/application/juce_ApplicationCommandInfo.h"; sourceTree = "SOURCE_ROOT"; }; - 21E1DBFAB3FB75875EA35280 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ApplicationCommandManager.cpp"; path = "../../src/application/juce_ApplicationCommandManager.cpp"; sourceTree = "SOURCE_ROOT"; }; - EDF52AB382E80530E8FED9A0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ApplicationCommandManager.h"; path = "../../src/application/juce_ApplicationCommandManager.h"; sourceTree = "SOURCE_ROOT"; }; - 415BD77DF4B2F4760D138735 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ApplicationCommandTarget.cpp"; path = "../../src/application/juce_ApplicationCommandTarget.cpp"; sourceTree = "SOURCE_ROOT"; }; - 8422E662212FA2082644A942 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ApplicationCommandTarget.h"; path = "../../src/application/juce_ApplicationCommandTarget.h"; sourceTree = "SOURCE_ROOT"; }; - BA97FEDA576503A21D971F1E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ApplicationProperties.cpp"; path = "../../src/application/juce_ApplicationProperties.cpp"; sourceTree = "SOURCE_ROOT"; }; - E03C84620DCB004172C09B28 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ApplicationProperties.h"; path = "../../src/application/juce_ApplicationProperties.h"; sourceTree = "SOURCE_ROOT"; }; - 1AA8BE2D76E153874FB08197 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AiffAudioFormat.cpp"; path = "../../src/audio/audio_file_formats/juce_AiffAudioFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; - 05C5C546E12C6422D865D864 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AiffAudioFormat.h"; path = "../../src/audio/audio_file_formats/juce_AiffAudioFormat.h"; sourceTree = "SOURCE_ROOT"; }; - 1F5A667524FB005D872340E1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioCDBurner.h"; path = "../../src/audio/audio_file_formats/juce_AudioCDBurner.h"; sourceTree = "SOURCE_ROOT"; }; - 0877D5750D6F21C5231687CA = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioCDReader.cpp"; path = "../../src/audio/audio_file_formats/juce_AudioCDReader.cpp"; sourceTree = "SOURCE_ROOT"; }; - 1BBE03BB0D71FEEEA440682B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioCDReader.h"; path = "../../src/audio/audio_file_formats/juce_AudioCDReader.h"; sourceTree = "SOURCE_ROOT"; }; - 7D85530D76756C33795ECCE9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioFormat.cpp"; path = "../../src/audio/audio_file_formats/juce_AudioFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; - 013E8938EE1C6B4F63016B55 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioFormat.h"; path = "../../src/audio/audio_file_formats/juce_AudioFormat.h"; sourceTree = "SOURCE_ROOT"; }; - 93006D32B18174D9FE0A5E9E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioFormatManager.cpp"; path = "../../src/audio/audio_file_formats/juce_AudioFormatManager.cpp"; sourceTree = "SOURCE_ROOT"; }; - 41070806F82EC9C6D1C67689 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioFormatManager.h"; path = "../../src/audio/audio_file_formats/juce_AudioFormatManager.h"; sourceTree = "SOURCE_ROOT"; }; - 9349E14552FEA0371553E808 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioFormatReader.cpp"; path = "../../src/audio/audio_file_formats/juce_AudioFormatReader.cpp"; sourceTree = "SOURCE_ROOT"; }; - 27356F5E93CEA4D472D83D8E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioFormatReader.h"; path = "../../src/audio/audio_file_formats/juce_AudioFormatReader.h"; sourceTree = "SOURCE_ROOT"; }; - 2AD64F53E12B20011B7A0DB7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioFormatWriter.cpp"; path = "../../src/audio/audio_file_formats/juce_AudioFormatWriter.cpp"; sourceTree = "SOURCE_ROOT"; }; - 8BD38C2507C0F8E28930A4F8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioFormatWriter.h"; path = "../../src/audio/audio_file_formats/juce_AudioFormatWriter.h"; sourceTree = "SOURCE_ROOT"; }; - 59597FA0A88A08937801D198 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioSubsectionReader.cpp"; path = "../../src/audio/audio_file_formats/juce_AudioSubsectionReader.cpp"; sourceTree = "SOURCE_ROOT"; }; - AE7F7F0D959C2E3CF5989C88 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioSubsectionReader.h"; path = "../../src/audio/audio_file_formats/juce_AudioSubsectionReader.h"; sourceTree = "SOURCE_ROOT"; }; - 27C3C51DF2519B519B76E2EE = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioThumbnail.cpp"; path = "../../src/audio/audio_file_formats/juce_AudioThumbnail.cpp"; sourceTree = "SOURCE_ROOT"; }; - 7B34E897026857C84399A09C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioThumbnail.h"; path = "../../src/audio/audio_file_formats/juce_AudioThumbnail.h"; sourceTree = "SOURCE_ROOT"; }; - CB32D4EE59D5CA9DB12F944D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioThumbnailCache.cpp"; path = "../../src/audio/audio_file_formats/juce_AudioThumbnailCache.cpp"; sourceTree = "SOURCE_ROOT"; }; - 3442FA257104DC3F43E7F870 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioThumbnailCache.h"; path = "../../src/audio/audio_file_formats/juce_AudioThumbnailCache.h"; sourceTree = "SOURCE_ROOT"; }; - 203AC66FFB20EAD2E7A594BD = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_CoreAudioFormat.cpp"; path = "../../src/audio/audio_file_formats/juce_CoreAudioFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; - C9F1015CA457A61082398E34 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CoreAudioFormat.h"; path = "../../src/audio/audio_file_formats/juce_CoreAudioFormat.h"; sourceTree = "SOURCE_ROOT"; }; - E00781B15E47C9CB9E94869D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FlacAudioFormat.cpp"; path = "../../src/audio/audio_file_formats/juce_FlacAudioFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; - 7C06BD13BF7E0097EB0A8D08 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FlacAudioFormat.h"; path = "../../src/audio/audio_file_formats/juce_FlacAudioFormat.h"; sourceTree = "SOURCE_ROOT"; }; - DA868174D4D2059AC1BE7E71 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OggVorbisAudioFormat.cpp"; path = "../../src/audio/audio_file_formats/juce_OggVorbisAudioFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; - 25B1AC1A6767AAD9E9515A18 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OggVorbisAudioFormat.h"; path = "../../src/audio/audio_file_formats/juce_OggVorbisAudioFormat.h"; sourceTree = "SOURCE_ROOT"; }; - 7CF036906034FABB44D2108F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_QuickTimeAudioFormat.cpp"; path = "../../src/audio/audio_file_formats/juce_QuickTimeAudioFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; - DB5CAB7BC2973ABFF0867BCB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_QuickTimeAudioFormat.h"; path = "../../src/audio/audio_file_formats/juce_QuickTimeAudioFormat.h"; sourceTree = "SOURCE_ROOT"; }; - D5D2FD212300E7D49ED74823 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_WavAudioFormat.cpp"; path = "../../src/audio/audio_file_formats/juce_WavAudioFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; - 87A18C425F53C2098B1D42FE = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_WavAudioFormat.h"; path = "../../src/audio/audio_file_formats/juce_WavAudioFormat.h"; sourceTree = "SOURCE_ROOT"; }; - 7AE5295A472723B26537FAEC = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioFormatReaderSource.cpp"; path = "../../src/audio/audio_sources/juce_AudioFormatReaderSource.cpp"; sourceTree = "SOURCE_ROOT"; }; - 51287E236C749092458BA2DD = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioFormatReaderSource.h"; path = "../../src/audio/audio_sources/juce_AudioFormatReaderSource.h"; sourceTree = "SOURCE_ROOT"; }; - 4C3258A1978AF3D357D196C6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioSource.h"; path = "../../src/audio/audio_sources/juce_AudioSource.h"; sourceTree = "SOURCE_ROOT"; }; - FBB2EEF0E5EC5EB6F89E9066 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioSourcePlayer.cpp"; path = "../../src/audio/audio_sources/juce_AudioSourcePlayer.cpp"; sourceTree = "SOURCE_ROOT"; }; - AE9C08108699C71A289462B7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioSourcePlayer.h"; path = "../../src/audio/audio_sources/juce_AudioSourcePlayer.h"; sourceTree = "SOURCE_ROOT"; }; - 74AD63909D3EE09D63256A76 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioTransportSource.cpp"; path = "../../src/audio/audio_sources/juce_AudioTransportSource.cpp"; sourceTree = "SOURCE_ROOT"; }; - 67A8F408B1EC63407C9241B2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioTransportSource.h"; path = "../../src/audio/audio_sources/juce_AudioTransportSource.h"; sourceTree = "SOURCE_ROOT"; }; - 5D6E837F124C347B3C1CAE23 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_BufferingAudioSource.cpp"; path = "../../src/audio/audio_sources/juce_BufferingAudioSource.cpp"; sourceTree = "SOURCE_ROOT"; }; - E1EA83B7EF928DC88D069AEC = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BufferingAudioSource.h"; path = "../../src/audio/audio_sources/juce_BufferingAudioSource.h"; sourceTree = "SOURCE_ROOT"; }; - 1511366CAD437989DAA30CF2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ChannelRemappingAudioSource.cpp"; path = "../../src/audio/audio_sources/juce_ChannelRemappingAudioSource.cpp"; sourceTree = "SOURCE_ROOT"; }; - EA630BFFF638BBBC8FDC0018 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ChannelRemappingAudioSource.h"; path = "../../src/audio/audio_sources/juce_ChannelRemappingAudioSource.h"; sourceTree = "SOURCE_ROOT"; }; - D86718CE7E5DEF2071AC3D17 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_IIRFilterAudioSource.cpp"; path = "../../src/audio/audio_sources/juce_IIRFilterAudioSource.cpp"; sourceTree = "SOURCE_ROOT"; }; - 76BB7F75A7F9930ED5A0CDB6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_IIRFilterAudioSource.h"; path = "../../src/audio/audio_sources/juce_IIRFilterAudioSource.h"; sourceTree = "SOURCE_ROOT"; }; - 9A8053936C35A19B9E98623A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MixerAudioSource.cpp"; path = "../../src/audio/audio_sources/juce_MixerAudioSource.cpp"; sourceTree = "SOURCE_ROOT"; }; - 9CB1126A9FBFF1D6D6469AF9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MixerAudioSource.h"; path = "../../src/audio/audio_sources/juce_MixerAudioSource.h"; sourceTree = "SOURCE_ROOT"; }; - C63D6EC0555C13C1B79A6AAD = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PositionableAudioSource.h"; path = "../../src/audio/audio_sources/juce_PositionableAudioSource.h"; sourceTree = "SOURCE_ROOT"; }; - E2A56C23BF2BB466BB273E3E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ResamplingAudioSource.cpp"; path = "../../src/audio/audio_sources/juce_ResamplingAudioSource.cpp"; sourceTree = "SOURCE_ROOT"; }; - BE5DB55285441D501FED3C00 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ResamplingAudioSource.h"; path = "../../src/audio/audio_sources/juce_ResamplingAudioSource.h"; sourceTree = "SOURCE_ROOT"; }; - 5403C2A4DEE7B9B3B34235F8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ReverbAudioSource.cpp"; path = "../../src/audio/audio_sources/juce_ReverbAudioSource.cpp"; sourceTree = "SOURCE_ROOT"; }; - 0F70C4D118AC7625B4C42CD4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ReverbAudioSource.h"; path = "../../src/audio/audio_sources/juce_ReverbAudioSource.h"; sourceTree = "SOURCE_ROOT"; }; - 3988438157D4B75177703F8A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ToneGeneratorAudioSource.cpp"; path = "../../src/audio/audio_sources/juce_ToneGeneratorAudioSource.cpp"; sourceTree = "SOURCE_ROOT"; }; - 6AC857F51FD805D7BD3EF712 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ToneGeneratorAudioSource.h"; path = "../../src/audio/audio_sources/juce_ToneGeneratorAudioSource.h"; sourceTree = "SOURCE_ROOT"; }; - 6841D6AC927D02113F3AEBD4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioDeviceManager.cpp"; path = "../../src/audio/devices/juce_AudioDeviceManager.cpp"; sourceTree = "SOURCE_ROOT"; }; - E668D9C7FF084E59405A2A9E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioDeviceManager.h"; path = "../../src/audio/devices/juce_AudioDeviceManager.h"; sourceTree = "SOURCE_ROOT"; }; - C7DB1BB9AF7FE0A2AA38D767 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioIODevice.cpp"; path = "../../src/audio/devices/juce_AudioIODevice.cpp"; sourceTree = "SOURCE_ROOT"; }; - 95CA8EE24AFBB1F2F29A5394 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioIODevice.h"; path = "../../src/audio/devices/juce_AudioIODevice.h"; sourceTree = "SOURCE_ROOT"; }; - EAFD034BB1721BFBF9A3795E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioIODeviceType.cpp"; path = "../../src/audio/devices/juce_AudioIODeviceType.cpp"; sourceTree = "SOURCE_ROOT"; }; - EFAFC937377A21E9AC0F9776 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioIODeviceType.h"; path = "../../src/audio/devices/juce_AudioIODeviceType.h"; sourceTree = "SOURCE_ROOT"; }; - 5DB9D903D24646B0C2356A5D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioDataConverters.cpp"; path = "../../src/audio/dsp/juce_AudioDataConverters.cpp"; sourceTree = "SOURCE_ROOT"; }; - EBA6B46F7B3C11CA3744A4D0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioDataConverters.h"; path = "../../src/audio/dsp/juce_AudioDataConverters.h"; sourceTree = "SOURCE_ROOT"; }; - A1D687AE613A8B61EB63923D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioSampleBuffer.cpp"; path = "../../src/audio/dsp/juce_AudioSampleBuffer.cpp"; sourceTree = "SOURCE_ROOT"; }; - 812620B53BE820D26A63B65D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioSampleBuffer.h"; path = "../../src/audio/dsp/juce_AudioSampleBuffer.h"; sourceTree = "SOURCE_ROOT"; }; - 11C1A96A35A2F03F8C34BD43 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Decibels.h"; path = "../../src/audio/dsp/juce_Decibels.h"; sourceTree = "SOURCE_ROOT"; }; - E68EB4BC75216B5B56E3F937 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_IIRFilter.cpp"; path = "../../src/audio/dsp/juce_IIRFilter.cpp"; sourceTree = "SOURCE_ROOT"; }; - EE2259D9768027C2C001EEAD = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_IIRFilter.h"; path = "../../src/audio/dsp/juce_IIRFilter.h"; sourceTree = "SOURCE_ROOT"; }; - 2C55CE1674244DB199C3033F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Reverb.h"; path = "../../src/audio/dsp/juce_Reverb.h"; sourceTree = "SOURCE_ROOT"; }; - B457515938E7141D5E79B671 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MidiBuffer.cpp"; path = "../../src/audio/midi/juce_MidiBuffer.cpp"; sourceTree = "SOURCE_ROOT"; }; - 0604C2E17F0E0DFEFDA19F8D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiBuffer.h"; path = "../../src/audio/midi/juce_MidiBuffer.h"; sourceTree = "SOURCE_ROOT"; }; - 891E0B1AD09C0EA44297E0F2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MidiFile.cpp"; path = "../../src/audio/midi/juce_MidiFile.cpp"; sourceTree = "SOURCE_ROOT"; }; - EBACA038DBB50817BE80E8C5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiFile.h"; path = "../../src/audio/midi/juce_MidiFile.h"; sourceTree = "SOURCE_ROOT"; }; - C376B06C58C5D3C972583BBB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiInput.h"; path = "../../src/audio/midi/juce_MidiInput.h"; sourceTree = "SOURCE_ROOT"; }; - 0731C60911E6985F51325484 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MidiKeyboardState.cpp"; path = "../../src/audio/midi/juce_MidiKeyboardState.cpp"; sourceTree = "SOURCE_ROOT"; }; - 062F7ACF5282C5B2D4BF5EE1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiKeyboardState.h"; path = "../../src/audio/midi/juce_MidiKeyboardState.h"; sourceTree = "SOURCE_ROOT"; }; - DF3833AF6E38E55218FDF23F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MidiMessage.cpp"; path = "../../src/audio/midi/juce_MidiMessage.cpp"; sourceTree = "SOURCE_ROOT"; }; - C627F9E9EC160055D65D81CB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiMessage.h"; path = "../../src/audio/midi/juce_MidiMessage.h"; sourceTree = "SOURCE_ROOT"; }; - 0D3A77572C7256CE4C115FD7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MidiMessageCollector.cpp"; path = "../../src/audio/midi/juce_MidiMessageCollector.cpp"; sourceTree = "SOURCE_ROOT"; }; - A22A0F77C15B1E4A8F2EB42A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiMessageCollector.h"; path = "../../src/audio/midi/juce_MidiMessageCollector.h"; sourceTree = "SOURCE_ROOT"; }; - 78D29BB5C76CCF7C21EC0DAF = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MidiMessageSequence.cpp"; path = "../../src/audio/midi/juce_MidiMessageSequence.cpp"; sourceTree = "SOURCE_ROOT"; }; - DD3886D45B5988B4DAC2D049 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiMessageSequence.h"; path = "../../src/audio/midi/juce_MidiMessageSequence.h"; sourceTree = "SOURCE_ROOT"; }; - 01712FF0A160032FA1DAA8C2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MidiOutput.cpp"; path = "../../src/audio/midi/juce_MidiOutput.cpp"; sourceTree = "SOURCE_ROOT"; }; - 899BD7E18BE1EF7CDF53784C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiOutput.h"; path = "../../src/audio/midi/juce_MidiOutput.h"; sourceTree = "SOURCE_ROOT"; }; - 7B88F6B8E3A10CEAD9B0EE88 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_AU_Wrapper.mm"; path = "../../src/audio/plugin_client/AU/juce_AU_Wrapper.mm"; sourceTree = "SOURCE_ROOT"; }; - 1101E8CB676FDEEF0A89D921 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RTAS_DigiCode_Header.h"; path = "../../src/audio/plugin_client/RTAS/juce_RTAS_DigiCode_Header.h"; sourceTree = "SOURCE_ROOT"; }; - F222E5825D83E711C9F1B789 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RTAS_DigiCode1.cpp"; path = "../../src/audio/plugin_client/RTAS/juce_RTAS_DigiCode1.cpp"; sourceTree = "SOURCE_ROOT"; }; - CEAA2B84462EF0B5026EAB0A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RTAS_DigiCode2.cpp"; path = "../../src/audio/plugin_client/RTAS/juce_RTAS_DigiCode2.cpp"; sourceTree = "SOURCE_ROOT"; }; - 9A3151864FB90A6A4BCCAE9B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RTAS_DigiCode3.cpp"; path = "../../src/audio/plugin_client/RTAS/juce_RTAS_DigiCode3.cpp"; sourceTree = "SOURCE_ROOT"; }; - BCE37F0D994C0ADF2CCFF796 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_RTAS_MacUtilities.mm"; path = "../../src/audio/plugin_client/RTAS/juce_RTAS_MacUtilities.mm"; sourceTree = "SOURCE_ROOT"; }; - F52ECCD6C02108A2D7F672F5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RTAS_WinUtilities.cpp"; path = "../../src/audio/plugin_client/RTAS/juce_RTAS_WinUtilities.cpp"; sourceTree = "SOURCE_ROOT"; }; - 833C3F205F05BA4ADC883E53 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RTAS_Wrapper.cpp"; path = "../../src/audio/plugin_client/RTAS/juce_RTAS_Wrapper.cpp"; sourceTree = "SOURCE_ROOT"; }; - 69C4FF0DD888BA25477561C8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_VST_Wrapper.cpp"; path = "../../src/audio/plugin_client/VST/juce_VST_Wrapper.cpp"; sourceTree = "SOURCE_ROOT"; }; - 37E1FC756833849B8C7C1215 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_VST_Wrapper.mm"; path = "../../src/audio/plugin_client/VST/juce_VST_Wrapper.mm"; sourceTree = "SOURCE_ROOT"; }; - 2741189DF800566462E24A14 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_StandaloneFilterWindow.cpp"; path = "../../src/audio/plugin_client/Standalone/juce_StandaloneFilterWindow.cpp"; sourceTree = "SOURCE_ROOT"; }; - FAC43251D74E5140740BEF60 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_StandaloneFilterWindow.h"; path = "../../src/audio/plugin_client/Standalone/juce_StandaloneFilterWindow.h"; sourceTree = "SOURCE_ROOT"; }; - 2E96F55074F4EB74171EE6B6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_IncludeCharacteristics.h"; path = "../../src/audio/plugin_client/juce_IncludeCharacteristics.h"; sourceTree = "SOURCE_ROOT"; }; - 13F64389F0E25731A98E92CD = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PluginHeaders.h"; path = "../../src/audio/plugin_client/juce_PluginHeaders.h"; sourceTree = "SOURCE_ROOT"; }; - 7CDC2FA849B7ED73A2638A11 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PluginHostType.h"; path = "../../src/audio/plugin_client/juce_PluginHostType.h"; sourceTree = "SOURCE_ROOT"; }; - D76BDCCF9E1A1F26A8F578F0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioUnitPluginFormat.h"; path = "../../src/audio/plugin_host/formats/juce_AudioUnitPluginFormat.h"; sourceTree = "SOURCE_ROOT"; }; - 50FAF92038EBD0127900AAA1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_AudioUnitPluginFormat.mm"; path = "../../src/audio/plugin_host/formats/juce_AudioUnitPluginFormat.mm"; sourceTree = "SOURCE_ROOT"; }; - 2073E1A497363200233CD34E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DirectXPluginFormat.h"; path = "../../src/audio/plugin_host/formats/juce_DirectXPluginFormat.h"; sourceTree = "SOURCE_ROOT"; }; - F800E47459B2FE9DEF56F312 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LADSPAPluginFormat.h"; path = "../../src/audio/plugin_host/formats/juce_LADSPAPluginFormat.h"; sourceTree = "SOURCE_ROOT"; }; - B4291F2CEEC78CFEDEFC360E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_VSTMidiEventList.h"; path = "../../src/audio/plugin_host/formats/juce_VSTMidiEventList.h"; sourceTree = "SOURCE_ROOT"; }; - FCBB1DC14311D099809B21F7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_VSTPluginFormat.cpp"; path = "../../src/audio/plugin_host/formats/juce_VSTPluginFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; - 723EBD80931754F4DD77DD53 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_VSTPluginFormat.h"; path = "../../src/audio/plugin_host/formats/juce_VSTPluginFormat.h"; sourceTree = "SOURCE_ROOT"; }; - 2EBF36FAAF019B6F811D1C84 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_VSTPluginFormat.mm"; path = "../../src/audio/plugin_host/formats/juce_VSTPluginFormat.mm"; sourceTree = "SOURCE_ROOT"; }; - 1C8211DFB558D740EF4B173A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioPluginFormat.cpp"; path = "../../src/audio/plugin_host/juce_AudioPluginFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; - 28534632DF76A1EA837BD0D7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioPluginFormat.h"; path = "../../src/audio/plugin_host/juce_AudioPluginFormat.h"; sourceTree = "SOURCE_ROOT"; }; - DA4820727D6DDC75561A262C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioPluginFormatManager.cpp"; path = "../../src/audio/plugin_host/juce_AudioPluginFormatManager.cpp"; sourceTree = "SOURCE_ROOT"; }; - A6415104D1E3E5CE7031C0C1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioPluginFormatManager.h"; path = "../../src/audio/plugin_host/juce_AudioPluginFormatManager.h"; sourceTree = "SOURCE_ROOT"; }; - E5BA7B8913271E935A1DA487 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioPluginInstance.h"; path = "../../src/audio/plugin_host/juce_AudioPluginInstance.h"; sourceTree = "SOURCE_ROOT"; }; - 3110B983ACE956D6A24F8C8C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_KnownPluginList.cpp"; path = "../../src/audio/plugin_host/juce_KnownPluginList.cpp"; sourceTree = "SOURCE_ROOT"; }; - A3FE51C7DD706F536273AB0E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_KnownPluginList.h"; path = "../../src/audio/plugin_host/juce_KnownPluginList.h"; sourceTree = "SOURCE_ROOT"; }; - B6E20AE45813C0CA9B1014DD = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PluginDescription.cpp"; path = "../../src/audio/plugin_host/juce_PluginDescription.cpp"; sourceTree = "SOURCE_ROOT"; }; - 4AE3A448D79602BE793BB5AA = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PluginDescription.h"; path = "../../src/audio/plugin_host/juce_PluginDescription.h"; sourceTree = "SOURCE_ROOT"; }; - AF47BC3796A74CC15A192E8B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PluginDirectoryScanner.cpp"; path = "../../src/audio/plugin_host/juce_PluginDirectoryScanner.cpp"; sourceTree = "SOURCE_ROOT"; }; - 3D170AC8FD8E403C54E08F9D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PluginDirectoryScanner.h"; path = "../../src/audio/plugin_host/juce_PluginDirectoryScanner.h"; sourceTree = "SOURCE_ROOT"; }; - 9C5C0BCB2A298160025B15FC = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PluginListComponent.cpp"; path = "../../src/audio/plugin_host/juce_PluginListComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - 08C65C3EB60FE8BFA252E3EF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PluginListComponent.h"; path = "../../src/audio/plugin_host/juce_PluginListComponent.h"; sourceTree = "SOURCE_ROOT"; }; - 4CF107951746567DB63880A3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioPlayHead.h"; path = "../../src/audio/processors/juce_AudioPlayHead.h"; sourceTree = "SOURCE_ROOT"; }; - AB554593165FE8C8B40F4447 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioProcessor.cpp"; path = "../../src/audio/processors/juce_AudioProcessor.cpp"; sourceTree = "SOURCE_ROOT"; }; - 3F260C24341E58745AC5BE79 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioProcessor.h"; path = "../../src/audio/processors/juce_AudioProcessor.h"; sourceTree = "SOURCE_ROOT"; }; - BC2A50B0B01128E394E9DE9C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioProcessorEditor.cpp"; path = "../../src/audio/processors/juce_AudioProcessorEditor.cpp"; sourceTree = "SOURCE_ROOT"; }; - EC0F8FAA7EACE0D275064D60 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioProcessorEditor.h"; path = "../../src/audio/processors/juce_AudioProcessorEditor.h"; sourceTree = "SOURCE_ROOT"; }; - D141C024A3F5A6748B0E9ED7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioProcessorGraph.cpp"; path = "../../src/audio/processors/juce_AudioProcessorGraph.cpp"; sourceTree = "SOURCE_ROOT"; }; - 19C9509EC7DD00DA7443DEFC = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioProcessorGraph.h"; path = "../../src/audio/processors/juce_AudioProcessorGraph.h"; sourceTree = "SOURCE_ROOT"; }; - ABDE16ABC1784B0FD3887A8F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioProcessorListener.h"; path = "../../src/audio/processors/juce_AudioProcessorListener.h"; sourceTree = "SOURCE_ROOT"; }; - 08EBC2152F45FB2B839FCCC1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioProcessorPlayer.cpp"; path = "../../src/audio/processors/juce_AudioProcessorPlayer.cpp"; sourceTree = "SOURCE_ROOT"; }; - 350428D4D70AAB88B2B84790 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioProcessorPlayer.h"; path = "../../src/audio/processors/juce_AudioProcessorPlayer.h"; sourceTree = "SOURCE_ROOT"; }; - 096CF2243648F17E1BF5421B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GenericAudioProcessorEditor.cpp"; path = "../../src/audio/processors/juce_GenericAudioProcessorEditor.cpp"; sourceTree = "SOURCE_ROOT"; }; - CAD3312170E5DBE8AA8348BA = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_GenericAudioProcessorEditor.h"; path = "../../src/audio/processors/juce_GenericAudioProcessorEditor.h"; sourceTree = "SOURCE_ROOT"; }; - ED5966B95F865C586A3CE08F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Sampler.cpp"; path = "../../src/audio/synthesisers/juce_Sampler.cpp"; sourceTree = "SOURCE_ROOT"; }; - 6C6C1C360138D9BD4B27588B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Sampler.h"; path = "../../src/audio/synthesisers/juce_Sampler.h"; sourceTree = "SOURCE_ROOT"; }; - 35668D8EEA19957C6C9AC83A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Synthesiser.cpp"; path = "../../src/audio/synthesisers/juce_Synthesiser.cpp"; sourceTree = "SOURCE_ROOT"; }; - 9E6C206F95245BCDE38FB2B5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Synthesiser.h"; path = "../../src/audio/synthesisers/juce_Synthesiser.h"; sourceTree = "SOURCE_ROOT"; }; - 4F22276689685D839BD252EA = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AbstractFifo.cpp"; path = "../../src/containers/juce_AbstractFifo.cpp"; sourceTree = "SOURCE_ROOT"; }; - 9584B84F23A4251755D49213 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AbstractFifo.h"; path = "../../src/containers/juce_AbstractFifo.h"; sourceTree = "SOURCE_ROOT"; }; - 839BE8047CF2F8EBE43ED34F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Array.h"; path = "../../src/containers/juce_Array.h"; sourceTree = "SOURCE_ROOT"; }; - EDF52FDF87ACD33FE933142C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ArrayAllocationBase.h"; path = "../../src/containers/juce_ArrayAllocationBase.h"; sourceTree = "SOURCE_ROOT"; }; - F77C9170829579FABA5679AD = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DynamicObject.cpp"; path = "../../src/containers/juce_DynamicObject.cpp"; sourceTree = "SOURCE_ROOT"; }; - 34C402EF9ADCAD34FB657D43 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DynamicObject.h"; path = "../../src/containers/juce_DynamicObject.h"; sourceTree = "SOURCE_ROOT"; }; - 7DA9AC75A4D9227C8FC4B2F7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ElementComparator.h"; path = "../../src/containers/juce_ElementComparator.h"; sourceTree = "SOURCE_ROOT"; }; - 2767E1D082874D301D5D5F43 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_HashMap.h"; path = "../../src/containers/juce_HashMap.h"; sourceTree = "SOURCE_ROOT"; }; - 9289A1E6B141F24C57FF0927 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LinkedListPointer.h"; path = "../../src/containers/juce_LinkedListPointer.h"; sourceTree = "SOURCE_ROOT"; }; - 70E5409425A76782B6188B31 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_NamedValueSet.cpp"; path = "../../src/containers/juce_NamedValueSet.cpp"; sourceTree = "SOURCE_ROOT"; }; - BB4A73064B0FC74ECCA19116 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_NamedValueSet.h"; path = "../../src/containers/juce_NamedValueSet.h"; sourceTree = "SOURCE_ROOT"; }; - C1913C90ED7BE51E823887CD = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OwnedArray.h"; path = "../../src/containers/juce_OwnedArray.h"; sourceTree = "SOURCE_ROOT"; }; - 9BD379D2F7995BFE0B3E5369 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PropertySet.cpp"; path = "../../src/containers/juce_PropertySet.cpp"; sourceTree = "SOURCE_ROOT"; }; - C8F0F54CA3D913E7B8D559CF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PropertySet.h"; path = "../../src/containers/juce_PropertySet.h"; sourceTree = "SOURCE_ROOT"; }; - D7612CE51ED4F9D3F960F922 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ReferenceCountedArray.h"; path = "../../src/containers/juce_ReferenceCountedArray.h"; sourceTree = "SOURCE_ROOT"; }; - F95BC2FA7861CFF968D661ED = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ScopedValueSetter.h"; path = "../../src/containers/juce_ScopedValueSetter.h"; sourceTree = "SOURCE_ROOT"; }; - 2F5FD1DEFAE549553A8BE3B1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SortedSet.h"; path = "../../src/containers/juce_SortedSet.h"; sourceTree = "SOURCE_ROOT"; }; - 989E03031D341649B4A296F5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SparseSet.h"; path = "../../src/containers/juce_SparseSet.h"; sourceTree = "SOURCE_ROOT"; }; - 1809284DD05B56309D7EA24F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Value.cpp"; path = "../../src/containers/juce_Value.cpp"; sourceTree = "SOURCE_ROOT"; }; - 69F58BF234EDF6328F624E0A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Value.h"; path = "../../src/containers/juce_Value.h"; sourceTree = "SOURCE_ROOT"; }; - 5D27EE211D9BFF6A58C4DC42 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ValueTree.cpp"; path = "../../src/containers/juce_ValueTree.cpp"; sourceTree = "SOURCE_ROOT"; }; - 7CABDD863B47D8ADC900A4D8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ValueTree.h"; path = "../../src/containers/juce_ValueTree.h"; sourceTree = "SOURCE_ROOT"; }; - 4DF9D333038A442870668D31 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Variant.cpp"; path = "../../src/containers/juce_Variant.cpp"; sourceTree = "SOURCE_ROOT"; }; - A81B4FC81A75E21E5B96E506 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Variant.h"; path = "../../src/containers/juce_Variant.h"; sourceTree = "SOURCE_ROOT"; }; - D66C00E06B06EAD3B5257DD6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileLogger.cpp"; path = "../../src/core/juce_FileLogger.cpp"; sourceTree = "SOURCE_ROOT"; }; - C8441B7B3E4CCD4A257B4BFE = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileLogger.h"; path = "../../src/core/juce_FileLogger.h"; sourceTree = "SOURCE_ROOT"; }; - 92ACFFCCCD1C85A0F8C6F80F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Initialisation.h"; path = "../../src/core/juce_Initialisation.h"; sourceTree = "SOURCE_ROOT"; }; - 4555F03DBD059EEDECEF9F85 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Logger.cpp"; path = "../../src/core/juce_Logger.cpp"; sourceTree = "SOURCE_ROOT"; }; - 63F44EC0485FCA050814967E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Logger.h"; path = "../../src/core/juce_Logger.h"; sourceTree = "SOURCE_ROOT"; }; - DF6CAC67C0F2D379BDA03062 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PerformanceCounter.cpp"; path = "../../src/core/juce_PerformanceCounter.cpp"; sourceTree = "SOURCE_ROOT"; }; - 1159C6BB0D33EE8E1A96B083 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PerformanceCounter.h"; path = "../../src/core/juce_PerformanceCounter.h"; sourceTree = "SOURCE_ROOT"; }; - 8292AE37F99FCC1E5BF63A28 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PlatformDefs.h"; path = "../../src/core/juce_PlatformDefs.h"; sourceTree = "SOURCE_ROOT"; }; - CFAECB6551F48A1695DEC243 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RelativeTime.cpp"; path = "../../src/core/juce_RelativeTime.cpp"; sourceTree = "SOURCE_ROOT"; }; - B4137E4612C1D161894D0D27 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RelativeTime.h"; path = "../../src/core/juce_RelativeTime.h"; sourceTree = "SOURCE_ROOT"; }; - 0AD73B8EA0D60D9927B36624 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Result.cpp"; path = "../../src/core/juce_Result.cpp"; sourceTree = "SOURCE_ROOT"; }; - F51969AF328D2C7D52D7436D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Result.h"; path = "../../src/core/juce_Result.h"; sourceTree = "SOURCE_ROOT"; }; - C25D6136DF9CE441D6EB4C42 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Singleton.h"; path = "../../src/core/juce_Singleton.h"; sourceTree = "SOURCE_ROOT"; }; - CA66415F6EAA172B83755954 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_StandardHeader.h"; path = "../../src/core/juce_StandardHeader.h"; sourceTree = "SOURCE_ROOT"; }; - 18B170E96511BBA1019C66F8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_SystemStats.cpp"; path = "../../src/core/juce_SystemStats.cpp"; sourceTree = "SOURCE_ROOT"; }; - 45D14EF360BDA1F5692E583D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SystemStats.h"; path = "../../src/core/juce_SystemStats.h"; sourceTree = "SOURCE_ROOT"; }; - 956A1C30D5FE98DBB154204D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TargetPlatform.h"; path = "../../src/core/juce_TargetPlatform.h"; sourceTree = "SOURCE_ROOT"; }; - 8D2DE1F3CB15D003C90042E7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Time.cpp"; path = "../../src/core/juce_Time.cpp"; sourceTree = "SOURCE_ROOT"; }; - 872020C1EC3997ED744BF1BD = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Time.h"; path = "../../src/core/juce_Time.h"; sourceTree = "SOURCE_ROOT"; }; - CEF91E0C9CBB3EBFF9500FDA = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Uuid.cpp"; path = "../../src/core/juce_Uuid.cpp"; sourceTree = "SOURCE_ROOT"; }; - 297B664E9AB86DFE7DCAFF22 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Uuid.h"; path = "../../src/core/juce_Uuid.h"; sourceTree = "SOURCE_ROOT"; }; - E3C548295935D26121D5D823 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_BlowFish.cpp"; path = "../../src/cryptography/juce_BlowFish.cpp"; sourceTree = "SOURCE_ROOT"; }; - 7A4B0E6FD686BCF0B8CC771E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BlowFish.h"; path = "../../src/cryptography/juce_BlowFish.h"; sourceTree = "SOURCE_ROOT"; }; - EAFD8FAF365DFB32DC42D0E7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MD5.cpp"; path = "../../src/cryptography/juce_MD5.cpp"; sourceTree = "SOURCE_ROOT"; }; - 6E4345FEEB1DC732A16134A4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MD5.h"; path = "../../src/cryptography/juce_MD5.h"; sourceTree = "SOURCE_ROOT"; }; - E9E692847C14AD33CD5FB40B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Primes.cpp"; path = "../../src/cryptography/juce_Primes.cpp"; sourceTree = "SOURCE_ROOT"; }; - 22612DBDC6C689B605CC6B48 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Primes.h"; path = "../../src/cryptography/juce_Primes.h"; sourceTree = "SOURCE_ROOT"; }; - 7AE9331938549244E27A5D0E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RSAKey.cpp"; path = "../../src/cryptography/juce_RSAKey.cpp"; sourceTree = "SOURCE_ROOT"; }; - 16335266AFB4D19F25410E1D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RSAKey.h"; path = "../../src/cryptography/juce_RSAKey.h"; sourceTree = "SOURCE_ROOT"; }; - 4CBD301A08E9C3762F861FC3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_SHA256.cpp"; path = "../../src/cryptography/juce_SHA256.cpp"; sourceTree = "SOURCE_ROOT"; }; - 02CD7BA1750DE36237369F78 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SHA256.h"; path = "../../src/cryptography/juce_SHA256.h"; sourceTree = "SOURCE_ROOT"; }; - 31D985CB8646B78460E9D5A7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ActionBroadcaster.cpp"; path = "../../src/events/juce_ActionBroadcaster.cpp"; sourceTree = "SOURCE_ROOT"; }; - 09F7685D1EFF472ECB1F5EF1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ActionBroadcaster.h"; path = "../../src/events/juce_ActionBroadcaster.h"; sourceTree = "SOURCE_ROOT"; }; - 4EF8BD4BF46C4BCB39F96609 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ActionListener.h"; path = "../../src/events/juce_ActionListener.h"; sourceTree = "SOURCE_ROOT"; }; - 5EB7BD94A754E88D076D777A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AppleRemote.h"; path = "../../src/events/juce_AppleRemote.h"; sourceTree = "SOURCE_ROOT"; }; - 1617348BBF5D103619D76911 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AsyncUpdater.cpp"; path = "../../src/events/juce_AsyncUpdater.cpp"; sourceTree = "SOURCE_ROOT"; }; - 44DB44953945417F76199479 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AsyncUpdater.h"; path = "../../src/events/juce_AsyncUpdater.h"; sourceTree = "SOURCE_ROOT"; }; - D04B6E43A037F985434B2F5A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CallbackMessage.h"; path = "../../src/events/juce_CallbackMessage.h"; sourceTree = "SOURCE_ROOT"; }; - B80F8CD026033ACCCE11A1A4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ChangeBroadcaster.cpp"; path = "../../src/events/juce_ChangeBroadcaster.cpp"; sourceTree = "SOURCE_ROOT"; }; - 5F454A6B5A82ECE2396C5716 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ChangeBroadcaster.h"; path = "../../src/events/juce_ChangeBroadcaster.h"; sourceTree = "SOURCE_ROOT"; }; - B2D08C8EEE3E22026533D2EA = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ChangeListener.h"; path = "../../src/events/juce_ChangeListener.h"; sourceTree = "SOURCE_ROOT"; }; - AE68ECB6E063BD8D4984C0B3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_InterprocessConnection.cpp"; path = "../../src/events/juce_InterprocessConnection.cpp"; sourceTree = "SOURCE_ROOT"; }; - 4B935D7360C9F166C80A158D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_InterprocessConnection.h"; path = "../../src/events/juce_InterprocessConnection.h"; sourceTree = "SOURCE_ROOT"; }; - 843A7B398E9411F0AF28D65D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_InterprocessConnectionServer.cpp"; path = "../../src/events/juce_InterprocessConnectionServer.cpp"; sourceTree = "SOURCE_ROOT"; }; - 57DD8EEE88C0D366E0354478 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_InterprocessConnectionServer.h"; path = "../../src/events/juce_InterprocessConnectionServer.h"; sourceTree = "SOURCE_ROOT"; }; - 80633D64E9EFA1433454669B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ListenerList.h"; path = "../../src/events/juce_ListenerList.h"; sourceTree = "SOURCE_ROOT"; }; - 9CF077D3ED7B7B56F351AAF6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Message.cpp"; path = "../../src/events/juce_Message.cpp"; sourceTree = "SOURCE_ROOT"; }; - 7A1219C6560BDBE2E170D2A9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Message.h"; path = "../../src/events/juce_Message.h"; sourceTree = "SOURCE_ROOT"; }; - E594F70DC2F292FF1EF65CB6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MessageListener.cpp"; path = "../../src/events/juce_MessageListener.cpp"; sourceTree = "SOURCE_ROOT"; }; - BE17B7279B4BF40E51C12F47 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MessageListener.h"; path = "../../src/events/juce_MessageListener.h"; sourceTree = "SOURCE_ROOT"; }; - E2D07ED5E1A4A460E0DEF59C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MessageManager.cpp"; path = "../../src/events/juce_MessageManager.cpp"; sourceTree = "SOURCE_ROOT"; }; - 2EBDE3FF4894D72C310C9F84 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MessageManager.h"; path = "../../src/events/juce_MessageManager.h"; sourceTree = "SOURCE_ROOT"; }; - 1F2CFBF13ADCA05C0DC2D7D4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MultiTimer.cpp"; path = "../../src/events/juce_MultiTimer.cpp"; sourceTree = "SOURCE_ROOT"; }; - C51E9973A6FAB635081B9FDC = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MultiTimer.h"; path = "../../src/events/juce_MultiTimer.h"; sourceTree = "SOURCE_ROOT"; }; - C818B558D6D5B62A80621281 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Timer.cpp"; path = "../../src/events/juce_Timer.cpp"; sourceTree = "SOURCE_ROOT"; }; - 32C0312A5D246D41AAD98A11 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Timer.h"; path = "../../src/events/juce_Timer.h"; sourceTree = "SOURCE_ROOT"; }; - D0D9267E200BD462361810F7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Component.cpp"; path = "../../src/gui/components/juce_Component.cpp"; sourceTree = "SOURCE_ROOT"; }; - 17A21B31FD41D00A4088FADF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Component.h"; path = "../../src/gui/components/juce_Component.h"; sourceTree = "SOURCE_ROOT"; }; - E13F33E386E1A0D5FC546521 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ComponentListener.cpp"; path = "../../src/gui/components/juce_ComponentListener.cpp"; sourceTree = "SOURCE_ROOT"; }; - A0D6308567AAA50D1163D9D3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ComponentListener.h"; path = "../../src/gui/components/juce_ComponentListener.h"; sourceTree = "SOURCE_ROOT"; }; - 621B3A4B154182F69DDE2989 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Desktop.cpp"; path = "../../src/gui/components/juce_Desktop.cpp"; sourceTree = "SOURCE_ROOT"; }; - A1F58C1A972425C2B43DD1B3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Desktop.h"; path = "../../src/gui/components/juce_Desktop.h"; sourceTree = "SOURCE_ROOT"; }; - 2FFF9AFE4BD9437CE096E52B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ModalComponentManager.cpp"; path = "../../src/gui/components/juce_ModalComponentManager.cpp"; sourceTree = "SOURCE_ROOT"; }; - 41C8C324F13ADA3423FC3B0F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ModalComponentManager.h"; path = "../../src/gui/components/juce_ModalComponentManager.h"; sourceTree = "SOURCE_ROOT"; }; - 18EE6576A9ED098632CE5155 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ArrowButton.cpp"; path = "../../src/gui/components/buttons/juce_ArrowButton.cpp"; sourceTree = "SOURCE_ROOT"; }; - EB182DC4124FEFFFC87D12C4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ArrowButton.h"; path = "../../src/gui/components/buttons/juce_ArrowButton.h"; sourceTree = "SOURCE_ROOT"; }; - 8B1C747E63EEF036AD9AF3D8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Button.cpp"; path = "../../src/gui/components/buttons/juce_Button.cpp"; sourceTree = "SOURCE_ROOT"; }; - ECA97019B42083AD879B5B97 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Button.h"; path = "../../src/gui/components/buttons/juce_Button.h"; sourceTree = "SOURCE_ROOT"; }; - 1C3D15546065C1A9AA5AA0C6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DrawableButton.cpp"; path = "../../src/gui/components/buttons/juce_DrawableButton.cpp"; sourceTree = "SOURCE_ROOT"; }; - B2032A24364695450A5E6A76 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DrawableButton.h"; path = "../../src/gui/components/buttons/juce_DrawableButton.h"; sourceTree = "SOURCE_ROOT"; }; - BA415BD77DF4B2F4760D1387 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_HyperlinkButton.cpp"; path = "../../src/gui/components/buttons/juce_HyperlinkButton.cpp"; sourceTree = "SOURCE_ROOT"; }; - B72C0FB8DDC0F1102DF42943 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_HyperlinkButton.h"; path = "../../src/gui/components/buttons/juce_HyperlinkButton.h"; sourceTree = "SOURCE_ROOT"; }; - 6930E651AEE97FD47E185EC9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ImageButton.cpp"; path = "../../src/gui/components/buttons/juce_ImageButton.cpp"; sourceTree = "SOURCE_ROOT"; }; - 96FD3A02BA915E460520A0B7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ImageButton.h"; path = "../../src/gui/components/buttons/juce_ImageButton.h"; sourceTree = "SOURCE_ROOT"; }; - E927E4A58A84B21AA6B38A44 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ShapeButton.cpp"; path = "../../src/gui/components/buttons/juce_ShapeButton.cpp"; sourceTree = "SOURCE_ROOT"; }; - F2212B7F42E26C3DD86800F2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ShapeButton.h"; path = "../../src/gui/components/buttons/juce_ShapeButton.h"; sourceTree = "SOURCE_ROOT"; }; - 09AE2C7E2573204A7A35452B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TextButton.cpp"; path = "../../src/gui/components/buttons/juce_TextButton.cpp"; sourceTree = "SOURCE_ROOT"; }; - B394145555DCB9E0FAA5522C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TextButton.h"; path = "../../src/gui/components/buttons/juce_TextButton.h"; sourceTree = "SOURCE_ROOT"; }; - 9846D4523B3425BBB04107EE = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ToggleButton.cpp"; path = "../../src/gui/components/buttons/juce_ToggleButton.cpp"; sourceTree = "SOURCE_ROOT"; }; - 455176F8EDBA7A9DCEAA1367 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ToggleButton.h"; path = "../../src/gui/components/buttons/juce_ToggleButton.h"; sourceTree = "SOURCE_ROOT"; }; - F750738F398054AB38250780 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ToolbarButton.cpp"; path = "../../src/gui/components/buttons/juce_ToolbarButton.cpp"; sourceTree = "SOURCE_ROOT"; }; - DFF08DC68372AEE17EAA9CC7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ToolbarButton.h"; path = "../../src/gui/components/buttons/juce_ToolbarButton.h"; sourceTree = "SOURCE_ROOT"; }; - A3CB18F915377AC3FFA2E5F4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_CodeDocument.cpp"; path = "../../src/gui/components/code_editor/juce_CodeDocument.cpp"; sourceTree = "SOURCE_ROOT"; }; - B28C2EBD0846A09DAEDDFF4E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CodeDocument.h"; path = "../../src/gui/components/code_editor/juce_CodeDocument.h"; sourceTree = "SOURCE_ROOT"; }; - 04F48B09426293224576DA9A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_CodeEditorComponent.cpp"; path = "../../src/gui/components/code_editor/juce_CodeEditorComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - DF6B4E787E39CD446ED2EEEE = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CodeEditorComponent.h"; path = "../../src/gui/components/code_editor/juce_CodeEditorComponent.h"; sourceTree = "SOURCE_ROOT"; }; - C992FDA4396430392CFAD150 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CodeTokeniser.h"; path = "../../src/gui/components/code_editor/juce_CodeTokeniser.h"; sourceTree = "SOURCE_ROOT"; }; - 346CC505FAFEE9451040108D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_CPlusPlusCodeTokeniser.cpp"; path = "../../src/gui/components/code_editor/juce_CPlusPlusCodeTokeniser.cpp"; sourceTree = "SOURCE_ROOT"; }; - 3384A91143018ED9346E4118 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CPlusPlusCodeTokeniser.h"; path = "../../src/gui/components/code_editor/juce_CPlusPlusCodeTokeniser.h"; sourceTree = "SOURCE_ROOT"; }; - ADC16C18C8237A7F8E35E37A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ComboBox.cpp"; path = "../../src/gui/components/controls/juce_ComboBox.cpp"; sourceTree = "SOURCE_ROOT"; }; - D8EB3EA456D9FCC211CD1ED5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ComboBox.h"; path = "../../src/gui/components/controls/juce_ComboBox.h"; sourceTree = "SOURCE_ROOT"; }; - 0D3FA24FF38399E0EDA80860 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ImageComponent.cpp"; path = "../../src/gui/components/controls/juce_ImageComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - CA3454A9B6F80A2F4735C37E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ImageComponent.h"; path = "../../src/gui/components/controls/juce_ImageComponent.h"; sourceTree = "SOURCE_ROOT"; }; - 7330A9643F50DE8BEACDBB61 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Label.cpp"; path = "../../src/gui/components/controls/juce_Label.cpp"; sourceTree = "SOURCE_ROOT"; }; - C0CC0FA84A4F7AA76C1611CB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Label.h"; path = "../../src/gui/components/controls/juce_Label.h"; sourceTree = "SOURCE_ROOT"; }; - 1BC6C010045A06BDB4C684F6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ListBox.cpp"; path = "../../src/gui/components/controls/juce_ListBox.cpp"; sourceTree = "SOURCE_ROOT"; }; - 3FFCAECECC0D469A010F7AF1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ListBox.h"; path = "../../src/gui/components/controls/juce_ListBox.h"; sourceTree = "SOURCE_ROOT"; }; - 71B6CE03D6DB07BB293C8206 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ProgressBar.cpp"; path = "../../src/gui/components/controls/juce_ProgressBar.cpp"; sourceTree = "SOURCE_ROOT"; }; - 1DB68310EA4D6180FF948AA0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ProgressBar.h"; path = "../../src/gui/components/controls/juce_ProgressBar.h"; sourceTree = "SOURCE_ROOT"; }; - 3CE16163A43A6E67428385EE = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Slider.cpp"; path = "../../src/gui/components/controls/juce_Slider.cpp"; sourceTree = "SOURCE_ROOT"; }; - E698677EEC8E88CAFF542764 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Slider.h"; path = "../../src/gui/components/controls/juce_Slider.h"; sourceTree = "SOURCE_ROOT"; }; - 6BB68B37C7B0BB4DA8326647 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TableHeaderComponent.cpp"; path = "../../src/gui/components/controls/juce_TableHeaderComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - 1EA844F7CC5377A14B0FD21C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TableHeaderComponent.h"; path = "../../src/gui/components/controls/juce_TableHeaderComponent.h"; sourceTree = "SOURCE_ROOT"; }; - 76E073B2A3F59A3ACD20CC87 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TableListBox.cpp"; path = "../../src/gui/components/controls/juce_TableListBox.cpp"; sourceTree = "SOURCE_ROOT"; }; - 8BA30F0AFF5EA0E1A0203ACB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TableListBox.h"; path = "../../src/gui/components/controls/juce_TableListBox.h"; sourceTree = "SOURCE_ROOT"; }; - A4E66D702028A22D8157241C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TextEditor.cpp"; path = "../../src/gui/components/controls/juce_TextEditor.cpp"; sourceTree = "SOURCE_ROOT"; }; - CB6BF5E15522D8A272032AE9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TextEditor.h"; path = "../../src/gui/components/controls/juce_TextEditor.h"; sourceTree = "SOURCE_ROOT"; }; - 53EB02EEDF5E7971EAB9E795 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Toolbar.cpp"; path = "../../src/gui/components/controls/juce_Toolbar.cpp"; sourceTree = "SOURCE_ROOT"; }; - 82FEB35063C3559D2F46AA6F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Toolbar.h"; path = "../../src/gui/components/controls/juce_Toolbar.h"; sourceTree = "SOURCE_ROOT"; }; - 37E48B8F8AD2BC448E5935C7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ToolbarItemComponent.cpp"; path = "../../src/gui/components/controls/juce_ToolbarItemComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - A77096E86054F70AC0A3B69E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ToolbarItemComponent.h"; path = "../../src/gui/components/controls/juce_ToolbarItemComponent.h"; sourceTree = "SOURCE_ROOT"; }; - 981BACFF7892B83828313D8E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ToolbarItemFactory.h"; path = "../../src/gui/components/controls/juce_ToolbarItemFactory.h"; sourceTree = "SOURCE_ROOT"; }; - D317D4B5BA40A5754EE56F47 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ToolbarItemPalette.cpp"; path = "../../src/gui/components/controls/juce_ToolbarItemPalette.cpp"; sourceTree = "SOURCE_ROOT"; }; - 8400CA0D3C2AB7A60A7329FB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ToolbarItemPalette.h"; path = "../../src/gui/components/controls/juce_ToolbarItemPalette.h"; sourceTree = "SOURCE_ROOT"; }; - BC209F6862D5923B8F9E3080 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TreeView.cpp"; path = "../../src/gui/components/controls/juce_TreeView.cpp"; sourceTree = "SOURCE_ROOT"; }; - B0D261D42091AAD1560A0D63 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TreeView.h"; path = "../../src/gui/components/controls/juce_TreeView.h"; sourceTree = "SOURCE_ROOT"; }; - B60FE8BFA252E3EF2D60B77A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DirectoryContentsDisplayComponent.cpp"; path = "../../src/gui/components/filebrowser/juce_DirectoryContentsDisplayComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - 79ABAD7BB654030EF29B8B9C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DirectoryContentsDisplayComponent.h"; path = "../../src/gui/components/filebrowser/juce_DirectoryContentsDisplayComponent.h"; sourceTree = "SOURCE_ROOT"; }; - D3B56583D4F60069296DB959 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DirectoryContentsList.cpp"; path = "../../src/gui/components/filebrowser/juce_DirectoryContentsList.cpp"; sourceTree = "SOURCE_ROOT"; }; - 3A4ABC7E24F155A8CAF027B3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DirectoryContentsList.h"; path = "../../src/gui/components/filebrowser/juce_DirectoryContentsList.h"; sourceTree = "SOURCE_ROOT"; }; - B1DEB4E0BBFE7E2D052165BD = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileBrowserComponent.cpp"; path = "../../src/gui/components/filebrowser/juce_FileBrowserComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - F9FEE6DAB2B2752AC13D7286 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileBrowserComponent.h"; path = "../../src/gui/components/filebrowser/juce_FileBrowserComponent.h"; sourceTree = "SOURCE_ROOT"; }; - 85F0A0454489E4AF1F80AC83 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileBrowserListener.h"; path = "../../src/gui/components/filebrowser/juce_FileBrowserListener.h"; sourceTree = "SOURCE_ROOT"; }; - 102BAE57AAA43A7685FCBD9A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileChooser.cpp"; path = "../../src/gui/components/filebrowser/juce_FileChooser.cpp"; sourceTree = "SOURCE_ROOT"; }; - F631A108CB5015BFA2E25E00 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileChooser.h"; path = "../../src/gui/components/filebrowser/juce_FileChooser.h"; sourceTree = "SOURCE_ROOT"; }; - 730CAA344708954DE271072C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileChooserDialogBox.cpp"; path = "../../src/gui/components/filebrowser/juce_FileChooserDialogBox.cpp"; sourceTree = "SOURCE_ROOT"; }; - 295793C7AA1A57DC4BBCBBC4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileChooserDialogBox.h"; path = "../../src/gui/components/filebrowser/juce_FileChooserDialogBox.h"; sourceTree = "SOURCE_ROOT"; }; - D54308F25AEE3110A166F2BE = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileFilter.cpp"; path = "../../src/gui/components/filebrowser/juce_FileFilter.cpp"; sourceTree = "SOURCE_ROOT"; }; - 3AF50EADB5B2C973E0C8EE9F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileFilter.h"; path = "../../src/gui/components/filebrowser/juce_FileFilter.h"; sourceTree = "SOURCE_ROOT"; }; - 9A9D8C524A070162517620E5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileListComponent.cpp"; path = "../../src/gui/components/filebrowser/juce_FileListComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - CD6C610A843822A7FA53E9D7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileListComponent.h"; path = "../../src/gui/components/filebrowser/juce_FileListComponent.h"; sourceTree = "SOURCE_ROOT"; }; - CA1B41922D8094982F967DBD = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FilenameComponent.cpp"; path = "../../src/gui/components/filebrowser/juce_FilenameComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - E9E66775B2F13ACD0B751E69 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FilenameComponent.h"; path = "../../src/gui/components/filebrowser/juce_FilenameComponent.h"; sourceTree = "SOURCE_ROOT"; }; - B689E250203DE38D6D4F39F9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FilePreviewComponent.h"; path = "../../src/gui/components/filebrowser/juce_FilePreviewComponent.h"; sourceTree = "SOURCE_ROOT"; }; - 29DFAA512171B967D687A945 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileSearchPathListComponent.cpp"; path = "../../src/gui/components/filebrowser/juce_FileSearchPathListComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - 0AB8288D92FDFA00F30FB8DE = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileSearchPathListComponent.h"; path = "../../src/gui/components/filebrowser/juce_FileSearchPathListComponent.h"; sourceTree = "SOURCE_ROOT"; }; - A418FC3BDDBF1CE9F2903490 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileTreeComponent.cpp"; path = "../../src/gui/components/filebrowser/juce_FileTreeComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - 0EAD906B617A1A17305CB9F4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileTreeComponent.h"; path = "../../src/gui/components/filebrowser/juce_FileTreeComponent.h"; sourceTree = "SOURCE_ROOT"; }; - 949854EDE6B5B16CEFB6108F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ImagePreviewComponent.cpp"; path = "../../src/gui/components/filebrowser/juce_ImagePreviewComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - F39059E72B927A700010851B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ImagePreviewComponent.h"; path = "../../src/gui/components/filebrowser/juce_ImagePreviewComponent.h"; sourceTree = "SOURCE_ROOT"; }; - 8A67B45A2BA1D19D1AC43315 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_WildcardFileFilter.cpp"; path = "../../src/gui/components/filebrowser/juce_WildcardFileFilter.cpp"; sourceTree = "SOURCE_ROOT"; }; - ECDD0F8397F3EE4E7FA7ACCC = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_WildcardFileFilter.h"; path = "../../src/gui/components/filebrowser/juce_WildcardFileFilter.h"; sourceTree = "SOURCE_ROOT"; }; - 912C419859C9C56BC96AA6FB = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_CaretComponent.cpp"; path = "../../src/gui/components/keyboard/juce_CaretComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - 717295136FD426125079F78C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CaretComponent.h"; path = "../../src/gui/components/keyboard/juce_CaretComponent.h"; sourceTree = "SOURCE_ROOT"; }; - 5ABC6616473BA4791AA8101E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_KeyboardFocusTraverser.cpp"; path = "../../src/gui/components/keyboard/juce_KeyboardFocusTraverser.cpp"; sourceTree = "SOURCE_ROOT"; }; - F61C34EE417006881D0869F4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_KeyboardFocusTraverser.h"; path = "../../src/gui/components/keyboard/juce_KeyboardFocusTraverser.h"; sourceTree = "SOURCE_ROOT"; }; - 29A79478AE8567250972ED43 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_KeyListener.cpp"; path = "../../src/gui/components/keyboard/juce_KeyListener.cpp"; sourceTree = "SOURCE_ROOT"; }; - FB080C47434A8FAB73B8F486 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_KeyListener.h"; path = "../../src/gui/components/keyboard/juce_KeyListener.h"; sourceTree = "SOURCE_ROOT"; }; - 7F5A271EAB78C7CF8B2341DE = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_KeyMappingEditorComponent.cpp"; path = "../../src/gui/components/keyboard/juce_KeyMappingEditorComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - 92EDE6EA48F94DC5A0BCB24A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_KeyMappingEditorComponent.h"; path = "../../src/gui/components/keyboard/juce_KeyMappingEditorComponent.h"; sourceTree = "SOURCE_ROOT"; }; - A00C6593BFBFA76043BC0C06 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_KeyPress.cpp"; path = "../../src/gui/components/keyboard/juce_KeyPress.cpp"; sourceTree = "SOURCE_ROOT"; }; - 02982EB6A81020D3D421AED3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_KeyPress.h"; path = "../../src/gui/components/keyboard/juce_KeyPress.h"; sourceTree = "SOURCE_ROOT"; }; - F1A33029252D29A6ADF171B0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_KeyPressMappingSet.cpp"; path = "../../src/gui/components/keyboard/juce_KeyPressMappingSet.cpp"; sourceTree = "SOURCE_ROOT"; }; - 15C6FD019B274AA51B4E2D76 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_KeyPressMappingSet.h"; path = "../../src/gui/components/keyboard/juce_KeyPressMappingSet.h"; sourceTree = "SOURCE_ROOT"; }; - B1E8FF009812F29C2620E6BB = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ModifierKeys.cpp"; path = "../../src/gui/components/keyboard/juce_ModifierKeys.cpp"; sourceTree = "SOURCE_ROOT"; }; - FAEEA3536AD17B2667A1BB94 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ModifierKeys.h"; path = "../../src/gui/components/keyboard/juce_ModifierKeys.h"; sourceTree = "SOURCE_ROOT"; }; - D64DD9F41E4598606855DFCF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TextEditorKeyMapper.h"; path = "../../src/gui/components/keyboard/juce_TextEditorKeyMapper.h"; sourceTree = "SOURCE_ROOT"; }; - 7356F5E93CEA4D472D83D8E5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TextInputTarget.h"; path = "../../src/gui/components/keyboard/juce_TextInputTarget.h"; sourceTree = "SOURCE_ROOT"; }; - 921B616E2229AEB6390D2B57 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ComponentAnimator.cpp"; path = "../../src/gui/components/layout/juce_ComponentAnimator.cpp"; sourceTree = "SOURCE_ROOT"; }; - FE1072B5FB77E8FEE1BEBDFE = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ComponentAnimator.h"; path = "../../src/gui/components/layout/juce_ComponentAnimator.h"; sourceTree = "SOURCE_ROOT"; }; - 07191E1A9805FA6E6F253FF6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ComponentBoundsConstrainer.cpp"; path = "../../src/gui/components/layout/juce_ComponentBoundsConstrainer.cpp"; sourceTree = "SOURCE_ROOT"; }; - 2EC173A08676F6E592A7B347 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ComponentBoundsConstrainer.h"; path = "../../src/gui/components/layout/juce_ComponentBoundsConstrainer.h"; sourceTree = "SOURCE_ROOT"; }; - 45E5EE9E0173683D721FABDA = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ComponentBuilder.cpp"; path = "../../src/gui/components/layout/juce_ComponentBuilder.cpp"; sourceTree = "SOURCE_ROOT"; }; - 2D3A362DD3833B9E70B10FD3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ComponentBuilder.h"; path = "../../src/gui/components/layout/juce_ComponentBuilder.h"; sourceTree = "SOURCE_ROOT"; }; - F8FCCCE06D31FEF697FCD80D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ComponentMovementWatcher.cpp"; path = "../../src/gui/components/layout/juce_ComponentMovementWatcher.cpp"; sourceTree = "SOURCE_ROOT"; }; - 44CDA79090B115C3B62A2168 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ComponentMovementWatcher.h"; path = "../../src/gui/components/layout/juce_ComponentMovementWatcher.h"; sourceTree = "SOURCE_ROOT"; }; - A6AD7357F905309D1B461EB7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GroupComponent.cpp"; path = "../../src/gui/components/layout/juce_GroupComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - E9242E8425497D889C764C66 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_GroupComponent.h"; path = "../../src/gui/components/layout/juce_GroupComponent.h"; sourceTree = "SOURCE_ROOT"; }; - FF046140CCF1EDB0DFF80178 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MultiDocumentPanel.cpp"; path = "../../src/gui/components/layout/juce_MultiDocumentPanel.cpp"; sourceTree = "SOURCE_ROOT"; }; - B6A223FB5B4A9388C83D6FC7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MultiDocumentPanel.h"; path = "../../src/gui/components/layout/juce_MultiDocumentPanel.h"; sourceTree = "SOURCE_ROOT"; }; - A95F42C5CB0C2E5052B31568 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ResizableBorderComponent.cpp"; path = "../../src/gui/components/layout/juce_ResizableBorderComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - 600B2FDBBBE812784CB49A69 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ResizableBorderComponent.h"; path = "../../src/gui/components/layout/juce_ResizableBorderComponent.h"; sourceTree = "SOURCE_ROOT"; }; - A31221E2A50CCE9DF06B5F4B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ResizableCornerComponent.cpp"; path = "../../src/gui/components/layout/juce_ResizableCornerComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - CB54AC3D311C44A1F3B463A5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ResizableCornerComponent.h"; path = "../../src/gui/components/layout/juce_ResizableCornerComponent.h"; sourceTree = "SOURCE_ROOT"; }; - 3D8B0E86C98E2EE49AE868C8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ResizableEdgeComponent.cpp"; path = "../../src/gui/components/layout/juce_ResizableEdgeComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - 238965266F88730956D776DB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ResizableEdgeComponent.h"; path = "../../src/gui/components/layout/juce_ResizableEdgeComponent.h"; sourceTree = "SOURCE_ROOT"; }; - B116FEC4D544DB8E38CB571E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ScrollBar.cpp"; path = "../../src/gui/components/layout/juce_ScrollBar.cpp"; sourceTree = "SOURCE_ROOT"; }; - 797C94BB7F42CBBAACCFFB87 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ScrollBar.h"; path = "../../src/gui/components/layout/juce_ScrollBar.h"; sourceTree = "SOURCE_ROOT"; }; - F1F65C9E7394E04E073A57A4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_StretchableLayoutManager.cpp"; path = "../../src/gui/components/layout/juce_StretchableLayoutManager.cpp"; sourceTree = "SOURCE_ROOT"; }; - F64E8284F142600B9F519B07 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_StretchableLayoutManager.h"; path = "../../src/gui/components/layout/juce_StretchableLayoutManager.h"; sourceTree = "SOURCE_ROOT"; }; - 993C90B10202DA78FA31CC58 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_StretchableLayoutResizerBar.cpp"; path = "../../src/gui/components/layout/juce_StretchableLayoutResizerBar.cpp"; sourceTree = "SOURCE_ROOT"; }; - 8C0FFF811E06D162050CAB14 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_StretchableLayoutResizerBar.h"; path = "../../src/gui/components/layout/juce_StretchableLayoutResizerBar.h"; sourceTree = "SOURCE_ROOT"; }; - 079CFB5DEF6F2B71E2910A22 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_StretchableObjectResizer.cpp"; path = "../../src/gui/components/layout/juce_StretchableObjectResizer.cpp"; sourceTree = "SOURCE_ROOT"; }; - D5F5282BE0F43A5E16824749 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_StretchableObjectResizer.h"; path = "../../src/gui/components/layout/juce_StretchableObjectResizer.h"; sourceTree = "SOURCE_ROOT"; }; - 143F36BCDE7A65EBA33900ED = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TabbedButtonBar.cpp"; path = "../../src/gui/components/layout/juce_TabbedButtonBar.cpp"; sourceTree = "SOURCE_ROOT"; }; - 093E54DECB8191CA74D79176 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TabbedButtonBar.h"; path = "../../src/gui/components/layout/juce_TabbedButtonBar.h"; sourceTree = "SOURCE_ROOT"; }; - F2C653BA4552E6838DFA4F87 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TabbedComponent.cpp"; path = "../../src/gui/components/layout/juce_TabbedComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - C42D9251031A81B5CF2C843B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TabbedComponent.h"; path = "../../src/gui/components/layout/juce_TabbedComponent.h"; sourceTree = "SOURCE_ROOT"; }; - D41423657626ACA672A9DED9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Viewport.cpp"; path = "../../src/gui/components/layout/juce_Viewport.cpp"; sourceTree = "SOURCE_ROOT"; }; - 811149E18993F029165D330D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Viewport.h"; path = "../../src/gui/components/layout/juce_Viewport.h"; sourceTree = "SOURCE_ROOT"; }; - FD004BDDCEDB7E324983F70C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_LookAndFeel.cpp"; path = "../../src/gui/components/lookandfeel/juce_LookAndFeel.cpp"; sourceTree = "SOURCE_ROOT"; }; - 7B991020107EC0D54965BCA2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LookAndFeel.h"; path = "../../src/gui/components/lookandfeel/juce_LookAndFeel.h"; sourceTree = "SOURCE_ROOT"; }; - B92ACF027E63D1C788DEC893 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OldSchoolLookAndFeel.cpp"; path = "../../src/gui/components/lookandfeel/juce_OldSchoolLookAndFeel.cpp"; sourceTree = "SOURCE_ROOT"; }; - 3C739F61EE232C75546D4DCF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OldSchoolLookAndFeel.h"; path = "../../src/gui/components/lookandfeel/juce_OldSchoolLookAndFeel.h"; sourceTree = "SOURCE_ROOT"; }; - 218D7D73C086866E587FFD01 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MenuBarComponent.cpp"; path = "../../src/gui/components/menus/juce_MenuBarComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - BB93D3C283731C0B25B7AAAE = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MenuBarComponent.h"; path = "../../src/gui/components/menus/juce_MenuBarComponent.h"; sourceTree = "SOURCE_ROOT"; }; - 1DDE0A8E4C5857715D9B5FAE = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MenuBarModel.cpp"; path = "../../src/gui/components/menus/juce_MenuBarModel.cpp"; sourceTree = "SOURCE_ROOT"; }; - 502B3625329816EA6330465F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MenuBarModel.h"; path = "../../src/gui/components/menus/juce_MenuBarModel.h"; sourceTree = "SOURCE_ROOT"; }; - 6AACD2FD239E39F87B666C6F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PopupMenu.cpp"; path = "../../src/gui/components/menus/juce_PopupMenu.cpp"; sourceTree = "SOURCE_ROOT"; }; - A563BC883D801CF5956DC4BC = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PopupMenu.h"; path = "../../src/gui/components/menus/juce_PopupMenu.h"; sourceTree = "SOURCE_ROOT"; }; - 9E4B3BAB9BDB06B60D28DF48 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ComponentDragger.cpp"; path = "../../src/gui/components/mouse/juce_ComponentDragger.cpp"; sourceTree = "SOURCE_ROOT"; }; - BCDD702ED33BADF3FC19384C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ComponentDragger.h"; path = "../../src/gui/components/mouse/juce_ComponentDragger.h"; sourceTree = "SOURCE_ROOT"; }; - 3D74B30C63465C32E26D8E33 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DragAndDropContainer.cpp"; path = "../../src/gui/components/mouse/juce_DragAndDropContainer.cpp"; sourceTree = "SOURCE_ROOT"; }; - D4993649A93B73052C8045EF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DragAndDropContainer.h"; path = "../../src/gui/components/mouse/juce_DragAndDropContainer.h"; sourceTree = "SOURCE_ROOT"; }; - 31EE71EA61B4ED293481EB97 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DragAndDropTarget.h"; path = "../../src/gui/components/mouse/juce_DragAndDropTarget.h"; sourceTree = "SOURCE_ROOT"; }; - A08313B5F112579D130373BF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileDragAndDropTarget.h"; path = "../../src/gui/components/mouse/juce_FileDragAndDropTarget.h"; sourceTree = "SOURCE_ROOT"; }; - E1CA0B04EDE60771B81B9700 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LassoComponent.h"; path = "../../src/gui/components/mouse/juce_LassoComponent.h"; sourceTree = "SOURCE_ROOT"; }; - 944BC51C440C167C5B2A23E3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MouseCursor.cpp"; path = "../../src/gui/components/mouse/juce_MouseCursor.cpp"; sourceTree = "SOURCE_ROOT"; }; - 136109B3076DDA7B2E01CF90 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MouseCursor.h"; path = "../../src/gui/components/mouse/juce_MouseCursor.h"; sourceTree = "SOURCE_ROOT"; }; - 067D84F9291770240D1AB5B4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MouseEvent.cpp"; path = "../../src/gui/components/mouse/juce_MouseEvent.cpp"; sourceTree = "SOURCE_ROOT"; }; - 50C02B44D0CB18898F575B1E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MouseEvent.h"; path = "../../src/gui/components/mouse/juce_MouseEvent.h"; sourceTree = "SOURCE_ROOT"; }; - 441257DD380138C03568FCBD = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MouseInputSource.cpp"; path = "../../src/gui/components/mouse/juce_MouseInputSource.cpp"; sourceTree = "SOURCE_ROOT"; }; - 07CF9AF337779EB486AC92BF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MouseInputSource.h"; path = "../../src/gui/components/mouse/juce_MouseInputSource.h"; sourceTree = "SOURCE_ROOT"; }; - 2886656DF7ACC9DDC888827F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MouseListener.cpp"; path = "../../src/gui/components/mouse/juce_MouseListener.cpp"; sourceTree = "SOURCE_ROOT"; }; - 0C28F27F9D1CE6CD65185760 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MouseListener.h"; path = "../../src/gui/components/mouse/juce_MouseListener.h"; sourceTree = "SOURCE_ROOT"; }; - 89AA49DD2A63D80E90A56768 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TooltipClient.h"; path = "../../src/gui/components/mouse/juce_TooltipClient.h"; sourceTree = "SOURCE_ROOT"; }; - 82DFF1BD3665DC32672FCCE8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MarkerList.cpp"; path = "../../src/gui/components/positioning/juce_MarkerList.cpp"; sourceTree = "SOURCE_ROOT"; }; - 5B6CD1833A98F9844B7E3FF4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MarkerList.h"; path = "../../src/gui/components/positioning/juce_MarkerList.h"; sourceTree = "SOURCE_ROOT"; }; - D39C0B853C3EBBBD11E7C71E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RelativeCoordinate.cpp"; path = "../../src/gui/components/positioning/juce_RelativeCoordinate.cpp"; sourceTree = "SOURCE_ROOT"; }; - 657546D70AB7B2709619E07A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RelativeCoordinate.h"; path = "../../src/gui/components/positioning/juce_RelativeCoordinate.h"; sourceTree = "SOURCE_ROOT"; }; - D31704DAB806B6AF3ED52DC7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RelativeCoordinatePositioner.cpp"; path = "../../src/gui/components/positioning/juce_RelativeCoordinatePositioner.cpp"; sourceTree = "SOURCE_ROOT"; }; - 574EC603B2B1189687851319 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RelativeCoordinatePositioner.h"; path = "../../src/gui/components/positioning/juce_RelativeCoordinatePositioner.h"; sourceTree = "SOURCE_ROOT"; }; - 243EF1A31A779413BC2D5B98 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RelativeParallelogram.cpp"; path = "../../src/gui/components/positioning/juce_RelativeParallelogram.cpp"; sourceTree = "SOURCE_ROOT"; }; - 72EFFDE39C7255D50F926944 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RelativeParallelogram.h"; path = "../../src/gui/components/positioning/juce_RelativeParallelogram.h"; sourceTree = "SOURCE_ROOT"; }; - 36BB6DDF702EC9B3DAC851FF = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RelativePoint.cpp"; path = "../../src/gui/components/positioning/juce_RelativePoint.cpp"; sourceTree = "SOURCE_ROOT"; }; - A3B6342C6207D452F6AD985C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RelativePoint.h"; path = "../../src/gui/components/positioning/juce_RelativePoint.h"; sourceTree = "SOURCE_ROOT"; }; - 9DA988F1D7CE29E0DFED7EF0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RelativePointPath.cpp"; path = "../../src/gui/components/positioning/juce_RelativePointPath.cpp"; sourceTree = "SOURCE_ROOT"; }; - C1A3232DDB617A20D9C26526 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RelativePointPath.h"; path = "../../src/gui/components/positioning/juce_RelativePointPath.h"; sourceTree = "SOURCE_ROOT"; }; - 072D77C3834B1B3FB77F277B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RelativeRectangle.cpp"; path = "../../src/gui/components/positioning/juce_RelativeRectangle.cpp"; sourceTree = "SOURCE_ROOT"; }; - 749CA35420339A25BA4E500F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RelativeRectangle.h"; path = "../../src/gui/components/positioning/juce_RelativeRectangle.h"; sourceTree = "SOURCE_ROOT"; }; - 1C3FFBA02AE51EDD72A6250B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_BooleanPropertyComponent.cpp"; path = "../../src/gui/components/properties/juce_BooleanPropertyComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - B422688E380911F3C21E3F04 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BooleanPropertyComponent.h"; path = "../../src/gui/components/properties/juce_BooleanPropertyComponent.h"; sourceTree = "SOURCE_ROOT"; }; - C45E7E6B6E45DEFBF80940DD = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ButtonPropertyComponent.cpp"; path = "../../src/gui/components/properties/juce_ButtonPropertyComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - C1F662CED371C843E4EE03B2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ButtonPropertyComponent.h"; path = "../../src/gui/components/properties/juce_ButtonPropertyComponent.h"; sourceTree = "SOURCE_ROOT"; }; - ECCBF2452804ECB2D5B4BC50 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ChoicePropertyComponent.cpp"; path = "../../src/gui/components/properties/juce_ChoicePropertyComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - C6B318D6930A05FF86AD97DA = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ChoicePropertyComponent.h"; path = "../../src/gui/components/properties/juce_ChoicePropertyComponent.h"; sourceTree = "SOURCE_ROOT"; }; - E2C948680009D1744CEDBC25 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PropertyComponent.cpp"; path = "../../src/gui/components/properties/juce_PropertyComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - 5B9E9460EAA932889DDC4873 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PropertyComponent.h"; path = "../../src/gui/components/properties/juce_PropertyComponent.h"; sourceTree = "SOURCE_ROOT"; }; - 0984A4BA00D6AAFB463657F4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PropertyPanel.cpp"; path = "../../src/gui/components/properties/juce_PropertyPanel.cpp"; sourceTree = "SOURCE_ROOT"; }; - 02685CE4575D6E9B8CCC7738 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PropertyPanel.h"; path = "../../src/gui/components/properties/juce_PropertyPanel.h"; sourceTree = "SOURCE_ROOT"; }; - 3451124EC2809C9BB591DF93 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_SliderPropertyComponent.cpp"; path = "../../src/gui/components/properties/juce_SliderPropertyComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - B568DEC2B352281BC63B33CD = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SliderPropertyComponent.h"; path = "../../src/gui/components/properties/juce_SliderPropertyComponent.h"; sourceTree = "SOURCE_ROOT"; }; - 84311C1F5A8ACC8DF4D6FF34 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TextPropertyComponent.cpp"; path = "../../src/gui/components/properties/juce_TextPropertyComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - 3641ABC17D67038746897FA7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TextPropertyComponent.h"; path = "../../src/gui/components/properties/juce_TextPropertyComponent.h"; sourceTree = "SOURCE_ROOT"; }; - E748C93240CDD61473B0107F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ActiveXControlComponent.h"; path = "../../src/gui/components/special/juce_ActiveXControlComponent.h"; sourceTree = "SOURCE_ROOT"; }; - DED871B1C7458B15DE7C9234 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioDeviceSelectorComponent.cpp"; path = "../../src/gui/components/special/juce_AudioDeviceSelectorComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - 26E787FFC68224BF8EB5A458 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioDeviceSelectorComponent.h"; path = "../../src/gui/components/special/juce_AudioDeviceSelectorComponent.h"; sourceTree = "SOURCE_ROOT"; }; - 11F1658A055C45FE824FD2DB = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_BubbleComponent.cpp"; path = "../../src/gui/components/special/juce_BubbleComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - 4DFF179AFD87D34C7E23B1E5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BubbleComponent.h"; path = "../../src/gui/components/special/juce_BubbleComponent.h"; sourceTree = "SOURCE_ROOT"; }; - 4C3C3AFC3D97C1378B7D7435 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_BubbleMessageComponent.cpp"; path = "../../src/gui/components/special/juce_BubbleMessageComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - C25DFA2F2B673EB0146412BB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BubbleMessageComponent.h"; path = "../../src/gui/components/special/juce_BubbleMessageComponent.h"; sourceTree = "SOURCE_ROOT"; }; - 0A20E7E561633610A76A34AB = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ColourSelector.cpp"; path = "../../src/gui/components/special/juce_ColourSelector.cpp"; sourceTree = "SOURCE_ROOT"; }; - CD9F817B7EF0DA080668A3A8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ColourSelector.h"; path = "../../src/gui/components/special/juce_ColourSelector.h"; sourceTree = "SOURCE_ROOT"; }; - 4BF7A01BCE61A5068CA13D8F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DirectShowComponent.h"; path = "../../src/gui/components/special/juce_DirectShowComponent.h"; sourceTree = "SOURCE_ROOT"; }; - 9C1D5CDA61FB51F657DA8B22 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DropShadower.cpp"; path = "../../src/gui/components/special/juce_DropShadower.cpp"; sourceTree = "SOURCE_ROOT"; }; - 7DB8CFB77EA690ACF54C63B4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DropShadower.h"; path = "../../src/gui/components/special/juce_DropShadower.h"; sourceTree = "SOURCE_ROOT"; }; - 3C8C1AAF32DFECB89EB83271 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MidiKeyboardComponent.cpp"; path = "../../src/gui/components/special/juce_MidiKeyboardComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - 127FC743FE67E6EEF2531BD5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiKeyboardComponent.h"; path = "../../src/gui/components/special/juce_MidiKeyboardComponent.h"; sourceTree = "SOURCE_ROOT"; }; - 4387C6496C7079FB0032B99D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_NSViewComponent.h"; path = "../../src/gui/components/special/juce_NSViewComponent.h"; sourceTree = "SOURCE_ROOT"; }; - 1317F0BE5EC80371F744967B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OpenGLComponent.cpp"; path = "../../src/gui/components/special/juce_OpenGLComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - 826CC87E9E280F46B6D62B64 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OpenGLComponent.h"; path = "../../src/gui/components/special/juce_OpenGLComponent.h"; sourceTree = "SOURCE_ROOT"; }; - A34C0E63D41CFF5E55FD1D9E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PreferencesPanel.cpp"; path = "../../src/gui/components/special/juce_PreferencesPanel.cpp"; sourceTree = "SOURCE_ROOT"; }; - 6BE989C709D2D1D017548447 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PreferencesPanel.h"; path = "../../src/gui/components/special/juce_PreferencesPanel.h"; sourceTree = "SOURCE_ROOT"; }; - 529CB909220344AD55944372 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_QuickTimeMovieComponent.h"; path = "../../src/gui/components/special/juce_QuickTimeMovieComponent.h"; sourceTree = "SOURCE_ROOT"; }; - A9DB12F944D9DC336AD0A78B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ScopedXLock.h"; path = "../../src/gui/components/special/juce_ScopedXLock.h"; sourceTree = "SOURCE_ROOT"; }; - CC04F253CB70B20B774801A9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_SystemTrayIconComponent.cpp"; path = "../../src/gui/components/special/juce_SystemTrayIconComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - D9847FECA6801E9A61007D50 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SystemTrayIconComponent.h"; path = "../../src/gui/components/special/juce_SystemTrayIconComponent.h"; sourceTree = "SOURCE_ROOT"; }; - 740D1808DB934123F05A1598 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_WebBrowserComponent.h"; path = "../../src/gui/components/special/juce_WebBrowserComponent.h"; sourceTree = "SOURCE_ROOT"; }; - A5AAF4475138358F33D4904A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AlertWindow.cpp"; path = "../../src/gui/components/windows/juce_AlertWindow.cpp"; sourceTree = "SOURCE_ROOT"; }; - 72C4FDDDB8602591DD4F7B3B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AlertWindow.h"; path = "../../src/gui/components/windows/juce_AlertWindow.h"; sourceTree = "SOURCE_ROOT"; }; - 8AEF18EE9B12D4677F96B709 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_CallOutBox.cpp"; path = "../../src/gui/components/windows/juce_CallOutBox.cpp"; sourceTree = "SOURCE_ROOT"; }; - 8F54431CD3A672B1EB8335BE = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CallOutBox.h"; path = "../../src/gui/components/windows/juce_CallOutBox.h"; sourceTree = "SOURCE_ROOT"; }; - 2FFDC7636EFC2D7F74590A31 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ComponentPeer.cpp"; path = "../../src/gui/components/windows/juce_ComponentPeer.cpp"; sourceTree = "SOURCE_ROOT"; }; - 12C66C90F3192AFFD6BCEDB6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ComponentPeer.h"; path = "../../src/gui/components/windows/juce_ComponentPeer.h"; sourceTree = "SOURCE_ROOT"; }; - 929FEA5458430B7AE23BBB46 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DialogWindow.cpp"; path = "../../src/gui/components/windows/juce_DialogWindow.cpp"; sourceTree = "SOURCE_ROOT"; }; - C286C779DD52C29F86E3DBE9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DialogWindow.h"; path = "../../src/gui/components/windows/juce_DialogWindow.h"; sourceTree = "SOURCE_ROOT"; }; - 090907E4FE95EE2B11C1A0E1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DocumentWindow.cpp"; path = "../../src/gui/components/windows/juce_DocumentWindow.cpp"; sourceTree = "SOURCE_ROOT"; }; - 6E522DF13EC47755234A5D57 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DocumentWindow.h"; path = "../../src/gui/components/windows/juce_DocumentWindow.h"; sourceTree = "SOURCE_ROOT"; }; - 3FC6FC331B4E104D1DC223D6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_NativeMessageBox.h"; path = "../../src/gui/components/windows/juce_NativeMessageBox.h"; sourceTree = "SOURCE_ROOT"; }; - 2E4A5F7128313C23AD0356F7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ResizableWindow.cpp"; path = "../../src/gui/components/windows/juce_ResizableWindow.cpp"; sourceTree = "SOURCE_ROOT"; }; - 207CDD87107EAC8ED17DD601 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ResizableWindow.h"; path = "../../src/gui/components/windows/juce_ResizableWindow.h"; sourceTree = "SOURCE_ROOT"; }; - 87E57C8F3448D615271CD9F6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_SplashScreen.cpp"; path = "../../src/gui/components/windows/juce_SplashScreen.cpp"; sourceTree = "SOURCE_ROOT"; }; - 7C06FF93D655B9987000ECA9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SplashScreen.h"; path = "../../src/gui/components/windows/juce_SplashScreen.h"; sourceTree = "SOURCE_ROOT"; }; - D7772BC5E4E455AE2916A87D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ThreadWithProgressWindow.cpp"; path = "../../src/gui/components/windows/juce_ThreadWithProgressWindow.cpp"; sourceTree = "SOURCE_ROOT"; }; - 2FC449D291A603E26E938F52 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ThreadWithProgressWindow.h"; path = "../../src/gui/components/windows/juce_ThreadWithProgressWindow.h"; sourceTree = "SOURCE_ROOT"; }; - 6C33842C52B61407CACCA858 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TooltipWindow.cpp"; path = "../../src/gui/components/windows/juce_TooltipWindow.cpp"; sourceTree = "SOURCE_ROOT"; }; - 6165F485E931EF9F69D2145F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TooltipWindow.h"; path = "../../src/gui/components/windows/juce_TooltipWindow.h"; sourceTree = "SOURCE_ROOT"; }; - A24990B395323FBAC0BEFB5A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TopLevelWindow.cpp"; path = "../../src/gui/components/windows/juce_TopLevelWindow.cpp"; sourceTree = "SOURCE_ROOT"; }; - C7C882D550E3B72FA5EFA88A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TopLevelWindow.h"; path = "../../src/gui/components/windows/juce_TopLevelWindow.h"; sourceTree = "SOURCE_ROOT"; }; - EF18D0073BE50E572ADD9A1C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Colour.cpp"; path = "../../src/gui/graphics/colour/juce_Colour.cpp"; sourceTree = "SOURCE_ROOT"; }; - 8F6F9E1FD31E1A6268CFD3F9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Colour.h"; path = "../../src/gui/graphics/colour/juce_Colour.h"; sourceTree = "SOURCE_ROOT"; }; - D36EFC4421056277BA87387E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ColourGradient.cpp"; path = "../../src/gui/graphics/colour/juce_ColourGradient.cpp"; sourceTree = "SOURCE_ROOT"; }; - 3AE0BD116486BCE37F0D994C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ColourGradient.h"; path = "../../src/gui/graphics/colour/juce_ColourGradient.h"; sourceTree = "SOURCE_ROOT"; }; - 41AF663E626B8F6D319B9966 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Colours.cpp"; path = "../../src/gui/graphics/colour/juce_Colours.cpp"; sourceTree = "SOURCE_ROOT"; }; - C913994AAA448C9F22ACF100 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Colours.h"; path = "../../src/gui/graphics/colour/juce_Colours.h"; sourceTree = "SOURCE_ROOT"; }; - 112017AA0A061CF080DBD504 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PixelFormats.h"; path = "../../src/gui/graphics/colour/juce_PixelFormats.h"; sourceTree = "SOURCE_ROOT"; }; - 3EC800323255128D69539BAE = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_EdgeTable.cpp"; path = "../../src/gui/graphics/contexts/juce_EdgeTable.cpp"; sourceTree = "SOURCE_ROOT"; }; - BD52C1CCEAF6FEC311B9FDA1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_EdgeTable.h"; path = "../../src/gui/graphics/contexts/juce_EdgeTable.h"; sourceTree = "SOURCE_ROOT"; }; - B7251E779500BA77F5522CC7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FillType.cpp"; path = "../../src/gui/graphics/contexts/juce_FillType.cpp"; sourceTree = "SOURCE_ROOT"; }; - 1F0DB4B2825AF638183B50D6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FillType.h"; path = "../../src/gui/graphics/contexts/juce_FillType.h"; sourceTree = "SOURCE_ROOT"; }; - EF50EEDCAB08F842AB8DE6DA = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GraphicsContext.cpp"; path = "../../src/gui/graphics/contexts/juce_GraphicsContext.cpp"; sourceTree = "SOURCE_ROOT"; }; - 6320F9BAFA094B5C0C828C58 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_GraphicsContext.h"; path = "../../src/gui/graphics/contexts/juce_GraphicsContext.h"; sourceTree = "SOURCE_ROOT"; }; - 2E03ADF975A126C1F2F7B667 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Justification.cpp"; path = "../../src/gui/graphics/contexts/juce_Justification.cpp"; sourceTree = "SOURCE_ROOT"; }; - 36268DD78D00323D391ECAAB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Justification.h"; path = "../../src/gui/graphics/contexts/juce_Justification.h"; sourceTree = "SOURCE_ROOT"; }; - D6B4FED1F1D9FB82C6424438 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LowLevelGraphicsContext.h"; path = "../../src/gui/graphics/contexts/juce_LowLevelGraphicsContext.h"; sourceTree = "SOURCE_ROOT"; }; - ED3ED8389001D55FBDCF1087 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_LowLevelGraphicsPostScriptRenderer.cpp"; path = "../../src/gui/graphics/contexts/juce_LowLevelGraphicsPostScriptRenderer.cpp"; sourceTree = "SOURCE_ROOT"; }; - 5792CC17E9DFB966371CBEE1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LowLevelGraphicsPostScriptRenderer.h"; path = "../../src/gui/graphics/contexts/juce_LowLevelGraphicsPostScriptRenderer.h"; sourceTree = "SOURCE_ROOT"; }; - 835CC2A1E67E7B19E41F8FBD = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_LowLevelGraphicsSoftwareRenderer.cpp"; path = "../../src/gui/graphics/contexts/juce_LowLevelGraphicsSoftwareRenderer.cpp"; sourceTree = "SOURCE_ROOT"; }; - A7A8BE6B30C70701A10B5BD5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LowLevelGraphicsSoftwareRenderer.h"; path = "../../src/gui/graphics/contexts/juce_LowLevelGraphicsSoftwareRenderer.h"; sourceTree = "SOURCE_ROOT"; }; - FF052647D2EFA985D05C8E83 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RectanglePlacement.cpp"; path = "../../src/gui/graphics/contexts/juce_RectanglePlacement.cpp"; sourceTree = "SOURCE_ROOT"; }; - 2B90FAFBC65FB79A5D74E816 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RectanglePlacement.h"; path = "../../src/gui/graphics/contexts/juce_RectanglePlacement.h"; sourceTree = "SOURCE_ROOT"; }; - 504730C9B9F60192C2577979 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Drawable.cpp"; path = "../../src/gui/graphics/drawables/juce_Drawable.cpp"; sourceTree = "SOURCE_ROOT"; }; - B6A249ADEC5400011AA671D9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Drawable.h"; path = "../../src/gui/graphics/drawables/juce_Drawable.h"; sourceTree = "SOURCE_ROOT"; }; - 85B7BCACB40E02815844F71D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DrawableComposite.cpp"; path = "../../src/gui/graphics/drawables/juce_DrawableComposite.cpp"; sourceTree = "SOURCE_ROOT"; }; - 00B5FB5ABF4F13EC5D28E34D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DrawableComposite.h"; path = "../../src/gui/graphics/drawables/juce_DrawableComposite.h"; sourceTree = "SOURCE_ROOT"; }; - A54BC72C899A2AF82E1E37F8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DrawableImage.cpp"; path = "../../src/gui/graphics/drawables/juce_DrawableImage.cpp"; sourceTree = "SOURCE_ROOT"; }; - 849E645981CA10B8D5576462 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DrawableImage.h"; path = "../../src/gui/graphics/drawables/juce_DrawableImage.h"; sourceTree = "SOURCE_ROOT"; }; - 582DCC2F948F1DEA0D450B0D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DrawablePath.cpp"; path = "../../src/gui/graphics/drawables/juce_DrawablePath.cpp"; sourceTree = "SOURCE_ROOT"; }; - 17EBDF689C731DA257B243C9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DrawablePath.h"; path = "../../src/gui/graphics/drawables/juce_DrawablePath.h"; sourceTree = "SOURCE_ROOT"; }; - E0694CD7C814AA99E5A84799 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DrawableRectangle.cpp"; path = "../../src/gui/graphics/drawables/juce_DrawableRectangle.cpp"; sourceTree = "SOURCE_ROOT"; }; - 0FA9E378EBD7EE63EF72124F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DrawableRectangle.h"; path = "../../src/gui/graphics/drawables/juce_DrawableRectangle.h"; sourceTree = "SOURCE_ROOT"; }; - 62967D33232C5A86D88084B4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DrawableShape.cpp"; path = "../../src/gui/graphics/drawables/juce_DrawableShape.cpp"; sourceTree = "SOURCE_ROOT"; }; - 2FBD6F49349E7CC8FC2051EA = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DrawableShape.h"; path = "../../src/gui/graphics/drawables/juce_DrawableShape.h"; sourceTree = "SOURCE_ROOT"; }; - C17613C202D8E1C366F21D3C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DrawableText.cpp"; path = "../../src/gui/graphics/drawables/juce_DrawableText.cpp"; sourceTree = "SOURCE_ROOT"; }; - 1FA43B2E4244CD74B551DAD6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DrawableText.h"; path = "../../src/gui/graphics/drawables/juce_DrawableText.h"; sourceTree = "SOURCE_ROOT"; }; - 2BFC199D03DEEC329D6A7CB1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_SVGParser.cpp"; path = "../../src/gui/graphics/drawables/juce_SVGParser.cpp"; sourceTree = "SOURCE_ROOT"; }; - 32EA297812F1C88B42099501 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DropShadowEffect.cpp"; path = "../../src/gui/graphics/effects/juce_DropShadowEffect.cpp"; sourceTree = "SOURCE_ROOT"; }; - 85D4043F9E25047E07496DAC = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DropShadowEffect.h"; path = "../../src/gui/graphics/effects/juce_DropShadowEffect.h"; sourceTree = "SOURCE_ROOT"; }; - CB649686575473223C859482 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GlowEffect.cpp"; path = "../../src/gui/graphics/effects/juce_GlowEffect.cpp"; sourceTree = "SOURCE_ROOT"; }; - FD1FA4ABB4226372235643E4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_GlowEffect.h"; path = "../../src/gui/graphics/effects/juce_GlowEffect.h"; sourceTree = "SOURCE_ROOT"; }; - 18DB9BD10F140F132A3279C3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ImageEffectFilter.h"; path = "../../src/gui/graphics/effects/juce_ImageEffectFilter.h"; sourceTree = "SOURCE_ROOT"; }; - BA17B023595ECD8166A231D1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_CustomTypeface.cpp"; path = "../../src/gui/graphics/fonts/juce_CustomTypeface.cpp"; sourceTree = "SOURCE_ROOT"; }; - 6B4E90767D784246EC4E1944 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CustomTypeface.h"; path = "../../src/gui/graphics/fonts/juce_CustomTypeface.h"; sourceTree = "SOURCE_ROOT"; }; - 78068AA59A5DCFCCAAEA79D0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Font.cpp"; path = "../../src/gui/graphics/fonts/juce_Font.cpp"; sourceTree = "SOURCE_ROOT"; }; - 0401EA0E883CCAAAC6960A27 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Font.h"; path = "../../src/gui/graphics/fonts/juce_Font.h"; sourceTree = "SOURCE_ROOT"; }; - 61D06B694603F608CDA0703B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GlyphArrangement.cpp"; path = "../../src/gui/graphics/fonts/juce_GlyphArrangement.cpp"; sourceTree = "SOURCE_ROOT"; }; - 8117D400F45F1DF157634824 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_GlyphArrangement.h"; path = "../../src/gui/graphics/fonts/juce_GlyphArrangement.h"; sourceTree = "SOURCE_ROOT"; }; - 91CB423DBC5F3CBEDD9CF2EF = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TextLayout.cpp"; path = "../../src/gui/graphics/fonts/juce_TextLayout.cpp"; sourceTree = "SOURCE_ROOT"; }; - 4284BA7A26C7F6DEB00B4366 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TextLayout.h"; path = "../../src/gui/graphics/fonts/juce_TextLayout.h"; sourceTree = "SOURCE_ROOT"; }; - AF66A9951377E2D04C54CADD = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Typeface.cpp"; path = "../../src/gui/graphics/fonts/juce_Typeface.cpp"; sourceTree = "SOURCE_ROOT"; }; - 932024E0F2A2CC22B7657691 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Typeface.h"; path = "../../src/gui/graphics/fonts/juce_Typeface.h"; sourceTree = "SOURCE_ROOT"; }; - 2ED8CC539A9D9BE611F67A9A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AffineTransform.cpp"; path = "../../src/gui/graphics/geometry/juce_AffineTransform.cpp"; sourceTree = "SOURCE_ROOT"; }; - 5CD42FFF9F1A509D117BD0CB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AffineTransform.h"; path = "../../src/gui/graphics/geometry/juce_AffineTransform.h"; sourceTree = "SOURCE_ROOT"; }; - C18F342C087F69D141B3FAF5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BorderSize.h"; path = "../../src/gui/graphics/geometry/juce_BorderSize.h"; sourceTree = "SOURCE_ROOT"; }; - 4011751B9EFCA7B9345D7D7C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Line.h"; path = "../../src/gui/graphics/geometry/juce_Line.h"; sourceTree = "SOURCE_ROOT"; }; - 29BC53FEE9BC27F44534C909 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Path.cpp"; path = "../../src/gui/graphics/geometry/juce_Path.cpp"; sourceTree = "SOURCE_ROOT"; }; - 795E2BD2D39A3A6E36C26CBF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Path.h"; path = "../../src/gui/graphics/geometry/juce_Path.h"; sourceTree = "SOURCE_ROOT"; }; - 312F208B501E0D7764C6B613 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PathIterator.cpp"; path = "../../src/gui/graphics/geometry/juce_PathIterator.cpp"; sourceTree = "SOURCE_ROOT"; }; - ADB84942A96B6B9A0F5D7590 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PathIterator.h"; path = "../../src/gui/graphics/geometry/juce_PathIterator.h"; sourceTree = "SOURCE_ROOT"; }; - 9D3F1BAB1D48DDECB9F35916 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PathStrokeType.cpp"; path = "../../src/gui/graphics/geometry/juce_PathStrokeType.cpp"; sourceTree = "SOURCE_ROOT"; }; - C2700BB57B9EED7BFE975564 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PathStrokeType.h"; path = "../../src/gui/graphics/geometry/juce_PathStrokeType.h"; sourceTree = "SOURCE_ROOT"; }; - 132E3C38B4F0C6229EDF7000 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Point.h"; path = "../../src/gui/graphics/geometry/juce_Point.h"; sourceTree = "SOURCE_ROOT"; }; - F8C44FF03700F6140950F373 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Rectangle.h"; path = "../../src/gui/graphics/geometry/juce_Rectangle.h"; sourceTree = "SOURCE_ROOT"; }; - 1B170F70AF8AA0A39074F671 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RectangleList.cpp"; path = "../../src/gui/graphics/geometry/juce_RectangleList.cpp"; sourceTree = "SOURCE_ROOT"; }; - 8B7D7435287A20CB2D8E3704 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RectangleList.h"; path = "../../src/gui/graphics/geometry/juce_RectangleList.h"; sourceTree = "SOURCE_ROOT"; }; - 0F1C5770B363EF7DF64A876A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GIFLoader.cpp"; path = "../../src/gui/graphics/imaging/image_file_formats/juce_GIFLoader.cpp"; sourceTree = "SOURCE_ROOT"; }; - 6619D27E74F623B1E8CE8F71 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_JPEGLoader.cpp"; path = "../../src/gui/graphics/imaging/image_file_formats/juce_JPEGLoader.cpp"; sourceTree = "SOURCE_ROOT"; }; - EAF0F2EAB230F7539B91A7FB = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PNGLoader.cpp"; path = "../../src/gui/graphics/imaging/image_file_formats/juce_PNGLoader.cpp"; sourceTree = "SOURCE_ROOT"; }; - 0337723C9D607B82CF8AA682 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CameraDevice.h"; path = "../../src/gui/graphics/imaging/juce_CameraDevice.h"; sourceTree = "SOURCE_ROOT"; }; - 7904C2A3C52959748C46D54F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Image.cpp"; path = "../../src/gui/graphics/imaging/juce_Image.cpp"; sourceTree = "SOURCE_ROOT"; }; - D1BBA8F348C6DA2852A68221 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Image.h"; path = "../../src/gui/graphics/imaging/juce_Image.h"; sourceTree = "SOURCE_ROOT"; }; - 94D3EBE6E0D9AFE555226A88 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ImageCache.cpp"; path = "../../src/gui/graphics/imaging/juce_ImageCache.cpp"; sourceTree = "SOURCE_ROOT"; }; - 16CAB09D19F1A7379506310A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ImageCache.h"; path = "../../src/gui/graphics/imaging/juce_ImageCache.h"; sourceTree = "SOURCE_ROOT"; }; - 67F4F9E1F6B9B4D1C1A668E5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ImageConvolutionKernel.cpp"; path = "../../src/gui/graphics/imaging/juce_ImageConvolutionKernel.cpp"; sourceTree = "SOURCE_ROOT"; }; - 35A9146C03FC33B577817E9E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ImageConvolutionKernel.h"; path = "../../src/gui/graphics/imaging/juce_ImageConvolutionKernel.h"; sourceTree = "SOURCE_ROOT"; }; - 6E4DF7338364956EF42C4493 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ImageFileFormat.cpp"; path = "../../src/gui/graphics/imaging/juce_ImageFileFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; - BC2326E1A85025E700B1DE3D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ImageFileFormat.h"; path = "../../src/gui/graphics/imaging/juce_ImageFileFormat.h"; sourceTree = "SOURCE_ROOT"; }; - 3FD3FA96955DD648494E76A4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DirectoryIterator.cpp"; path = "../../src/io/files/juce_DirectoryIterator.cpp"; sourceTree = "SOURCE_ROOT"; }; - 974C3A59CC78DB4302B3552A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DirectoryIterator.h"; path = "../../src/io/files/juce_DirectoryIterator.h"; sourceTree = "SOURCE_ROOT"; }; - 692A95B19D9C32094A1E07B9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_File.cpp"; path = "../../src/io/files/juce_File.cpp"; sourceTree = "SOURCE_ROOT"; }; - DC51AF61DC4B345E5E4153E3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_File.h"; path = "../../src/io/files/juce_File.h"; sourceTree = "SOURCE_ROOT"; }; - 058702E8697667AEA38254C1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileInputStream.cpp"; path = "../../src/io/files/juce_FileInputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; - 090490A1C3B0002DFAD78C7B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileInputStream.h"; path = "../../src/io/files/juce_FileInputStream.h"; sourceTree = "SOURCE_ROOT"; }; - 6FFB38088C11BAE68368A3E7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileOutputStream.cpp"; path = "../../src/io/files/juce_FileOutputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; - 4EEF0B0BB4C3D1956B04122B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileOutputStream.h"; path = "../../src/io/files/juce_FileOutputStream.h"; sourceTree = "SOURCE_ROOT"; }; - 59B2FFF817679AEA84375E1B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileSearchPath.cpp"; path = "../../src/io/files/juce_FileSearchPath.cpp"; sourceTree = "SOURCE_ROOT"; }; - 49BF2B02A6D7B4438FC24839 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileSearchPath.h"; path = "../../src/io/files/juce_FileSearchPath.h"; sourceTree = "SOURCE_ROOT"; }; - 00B348FA35A7F691AEF84FBA = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MemoryMappedFile.h"; path = "../../src/io/files/juce_MemoryMappedFile.h"; sourceTree = "SOURCE_ROOT"; }; - D9B3C04F8EB4228DD59002E7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_NamedPipe.cpp"; path = "../../src/io/files/juce_NamedPipe.cpp"; sourceTree = "SOURCE_ROOT"; }; - 42DA88264F768BAACD0414A3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_NamedPipe.h"; path = "../../src/io/files/juce_NamedPipe.h"; sourceTree = "SOURCE_ROOT"; }; - 17C3AF03FF7AE88AE0C73311 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TemporaryFile.cpp"; path = "../../src/io/files/juce_TemporaryFile.cpp"; sourceTree = "SOURCE_ROOT"; }; - 75D6F1C676E178DEA8B86849 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TemporaryFile.h"; path = "../../src/io/files/juce_TemporaryFile.h"; sourceTree = "SOURCE_ROOT"; }; - 4035C867821E9B5887AA25FB = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ZipFile.cpp"; path = "../../src/io/files/juce_ZipFile.cpp"; sourceTree = "SOURCE_ROOT"; }; - 4D005659935C7DE99C2C01E2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ZipFile.h"; path = "../../src/io/files/juce_ZipFile.h"; sourceTree = "SOURCE_ROOT"; }; - EFA58F646B69B227AEF14140 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MACAddress.cpp"; path = "../../src/io/network/juce_MACAddress.cpp"; sourceTree = "SOURCE_ROOT"; }; - 7241B187AA9B0217838B6052 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MACAddress.h"; path = "../../src/io/network/juce_MACAddress.h"; sourceTree = "SOURCE_ROOT"; }; - 06B06C420341B005DFF951D2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Socket.cpp"; path = "../../src/io/network/juce_Socket.cpp"; sourceTree = "SOURCE_ROOT"; }; - 286206E754AC14DEAF88FD43 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Socket.h"; path = "../../src/io/network/juce_Socket.h"; sourceTree = "SOURCE_ROOT"; }; - AD7A1C2C82EE714EBDD52EFC = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_URL.cpp"; path = "../../src/io/network/juce_URL.cpp"; sourceTree = "SOURCE_ROOT"; }; - 21215569A0DCB6ACADD32401 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_URL.h"; path = "../../src/io/network/juce_URL.h"; sourceTree = "SOURCE_ROOT"; }; - D4211E697F43821CDBCE4F24 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_BufferedInputStream.cpp"; path = "../../src/io/streams/juce_BufferedInputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; - 7D593A29CAB138BD9AE950BA = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BufferedInputStream.h"; path = "../../src/io/streams/juce_BufferedInputStream.h"; sourceTree = "SOURCE_ROOT"; }; - BE5DCD603F7E21A1F66CDF33 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileInputSource.cpp"; path = "../../src/io/streams/juce_FileInputSource.cpp"; sourceTree = "SOURCE_ROOT"; }; - 304FD4FD5771F00C8EA46C10 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileInputSource.h"; path = "../../src/io/streams/juce_FileInputSource.h"; sourceTree = "SOURCE_ROOT"; }; - AE363A1FE2F403F7CE2FDF7F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GZIPCompressorOutputStream.cpp"; path = "../../src/io/streams/juce_GZIPCompressorOutputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; - 770082A38CF6071E5CFA563D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_GZIPCompressorOutputStream.h"; path = "../../src/io/streams/juce_GZIPCompressorOutputStream.h"; sourceTree = "SOURCE_ROOT"; }; - A10A63E2098A85B5CA9265B1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GZIPDecompressorInputStream.cpp"; path = "../../src/io/streams/juce_GZIPDecompressorInputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; - 8932FA0AA37E1E04CBA55B23 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_GZIPDecompressorInputStream.h"; path = "../../src/io/streams/juce_GZIPDecompressorInputStream.h"; sourceTree = "SOURCE_ROOT"; }; - AC183DCFAF18C9CEB88EEB1E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_InputSource.h"; path = "../../src/io/streams/juce_InputSource.h"; sourceTree = "SOURCE_ROOT"; }; - 3F60563DEC7941B88163A50E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_InputStream.cpp"; path = "../../src/io/streams/juce_InputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; - BB059F528EC362F86E4B4278 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_InputStream.h"; path = "../../src/io/streams/juce_InputStream.h"; sourceTree = "SOURCE_ROOT"; }; - 39C0783ED515AAA82F9CA37F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MemoryInputStream.cpp"; path = "../../src/io/streams/juce_MemoryInputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; - BD4388D88F2F02195AC73AD1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MemoryInputStream.h"; path = "../../src/io/streams/juce_MemoryInputStream.h"; sourceTree = "SOURCE_ROOT"; }; - B3F5E7A708350F72E7C77153 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MemoryOutputStream.cpp"; path = "../../src/io/streams/juce_MemoryOutputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; - DFE9A08C4AC8E1809018B5F4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MemoryOutputStream.h"; path = "../../src/io/streams/juce_MemoryOutputStream.h"; sourceTree = "SOURCE_ROOT"; }; - BBE79494A818EF83F52A4C7B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OutputStream.cpp"; path = "../../src/io/streams/juce_OutputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; - 5F27172FD963C1A748AA625A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OutputStream.h"; path = "../../src/io/streams/juce_OutputStream.h"; sourceTree = "SOURCE_ROOT"; }; - AE5A7EC70F288E7EA682081D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_SubregionStream.cpp"; path = "../../src/io/streams/juce_SubregionStream.cpp"; sourceTree = "SOURCE_ROOT"; }; - 6F7CA1B3AD09C76271FED3D6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SubregionStream.h"; path = "../../src/io/streams/juce_SubregionStream.h"; sourceTree = "SOURCE_ROOT"; }; - 7A039686F4F852E26936CA53 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_BigInteger.cpp"; path = "../../src/maths/juce_BigInteger.cpp"; sourceTree = "SOURCE_ROOT"; }; - 161894D0D279595D88F470A6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BigInteger.h"; path = "../../src/maths/juce_BigInteger.h"; sourceTree = "SOURCE_ROOT"; }; - 868E43A4BB7015579789E4F8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Expression.cpp"; path = "../../src/maths/juce_Expression.cpp"; sourceTree = "SOURCE_ROOT"; }; - 8E0874D93125C2DC34255EDB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Expression.h"; path = "../../src/maths/juce_Expression.h"; sourceTree = "SOURCE_ROOT"; }; - 7C2A4084A267F57F2E27F3F7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MathsFunctions.h"; path = "../../src/maths/juce_MathsFunctions.h"; sourceTree = "SOURCE_ROOT"; }; - D99C977ACCD09262F06F6624 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Random.cpp"; path = "../../src/maths/juce_Random.cpp"; sourceTree = "SOURCE_ROOT"; }; - A978BD4031CAE24FB0FE26E1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Random.h"; path = "../../src/maths/juce_Random.h"; sourceTree = "SOURCE_ROOT"; }; - 1A656E62C071C54D28343AC2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Range.h"; path = "../../src/maths/juce_Range.h"; sourceTree = "SOURCE_ROOT"; }; - 252632F3F97DF57C0781BEAD = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Atomic.h"; path = "../../src/memory/juce_Atomic.h"; sourceTree = "SOURCE_ROOT"; }; - 8FB80383DF3BAD7227DF465A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ByteOrder.h"; path = "../../src/memory/juce_ByteOrder.h"; sourceTree = "SOURCE_ROOT"; }; - FE76B46873DE20DFDC5A94BE = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_HeapBlock.h"; path = "../../src/memory/juce_HeapBlock.h"; sourceTree = "SOURCE_ROOT"; }; - 28C4C81039B42A399F5B7320 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LeakedObjectDetector.h"; path = "../../src/memory/juce_LeakedObjectDetector.h"; sourceTree = "SOURCE_ROOT"; }; - 341631A7E86BF1C0E49093C6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Memory.h"; path = "../../src/memory/juce_Memory.h"; sourceTree = "SOURCE_ROOT"; }; - AD655AA04981173716022D8D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MemoryBlock.cpp"; path = "../../src/memory/juce_MemoryBlock.cpp"; sourceTree = "SOURCE_ROOT"; }; - F1D085B5F12E814BF1D5C395 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MemoryBlock.h"; path = "../../src/memory/juce_MemoryBlock.h"; sourceTree = "SOURCE_ROOT"; }; - 58654C2630387C4A336A5BFB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OptionalScopedPointer.h"; path = "../../src/memory/juce_OptionalScopedPointer.h"; sourceTree = "SOURCE_ROOT"; }; - 524A70C9F23954F8F2A3F99B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ReferenceCountedObject.h"; path = "../../src/memory/juce_ReferenceCountedObject.h"; sourceTree = "SOURCE_ROOT"; }; - E05812E3CC31875A202D6B30 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ScopedPointer.h"; path = "../../src/memory/juce_ScopedPointer.h"; sourceTree = "SOURCE_ROOT"; }; - 224C989BF83B6EA867814BFF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_WeakReference.h"; path = "../../src/memory/juce_WeakReference.h"; sourceTree = "SOURCE_ROOT"; }; - 213F0A7BF38AF6AB34414A45 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiDataConcatenator.h"; path = "../../src/native/common/juce_MidiDataConcatenator.h"; sourceTree = "SOURCE_ROOT"; }; - 21B2342B75097AB93CFF7E97 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_posix_NamedPipe.cpp"; path = "../../src/native/common/juce_posix_NamedPipe.cpp"; sourceTree = "SOURCE_ROOT"; }; - 2C48BB1A286C6A63174E5798 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_posix_SharedCode.h"; path = "../../src/native/common/juce_posix_SharedCode.h"; sourceTree = "SOURCE_ROOT"; }; - 7A51D8B81F390A4CABF25C73 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Audio.cpp"; path = "../../src/native/linux/juce_linux_Audio.cpp"; sourceTree = "SOURCE_ROOT"; }; - 76DB94CC776536F5D05B9445 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_AudioCDReader.cpp"; path = "../../src/native/linux/juce_linux_AudioCDReader.cpp"; sourceTree = "SOURCE_ROOT"; }; - AA698DD5A82F91CF84A29666 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Clipboard.cpp"; path = "../../src/native/linux/juce_linux_Clipboard.cpp"; sourceTree = "SOURCE_ROOT"; }; - FABA493FEE07E6373DD8EB41 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_FileChooser.cpp"; path = "../../src/native/linux/juce_linux_FileChooser.cpp"; sourceTree = "SOURCE_ROOT"; }; - 595EBA8A689DA899986314D8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Files.cpp"; path = "../../src/native/linux/juce_linux_Files.cpp"; sourceTree = "SOURCE_ROOT"; }; - EACFC12E665283EB7926E9EC = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Fonts.cpp"; path = "../../src/native/linux/juce_linux_Fonts.cpp"; sourceTree = "SOURCE_ROOT"; }; - BAE5CE629DF9D286293E616F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_JackAudio.cpp"; path = "../../src/native/linux/juce_linux_JackAudio.cpp"; sourceTree = "SOURCE_ROOT"; }; - D4C499CB25F043FE667BC5E1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Messaging.cpp"; path = "../../src/native/linux/juce_linux_Messaging.cpp"; sourceTree = "SOURCE_ROOT"; }; - 4366712140FBEBEDBCBDCE9B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Midi.cpp"; path = "../../src/native/linux/juce_linux_Midi.cpp"; sourceTree = "SOURCE_ROOT"; }; - E0A2C24581917DD090186333 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_NativeCode.cpp"; path = "../../src/native/linux/juce_linux_NativeCode.cpp"; sourceTree = "SOURCE_ROOT"; }; - E61B485B10F8D4A3986953CD = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_linux_NativeIncludes.h"; path = "../../src/native/linux/juce_linux_NativeIncludes.h"; sourceTree = "SOURCE_ROOT"; }; - 3F3D429025A92B6F0FB6F8EF = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Network.cpp"; path = "../../src/native/linux/juce_linux_Network.cpp"; sourceTree = "SOURCE_ROOT"; }; - 275F2210628D9E9968B1B258 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_OpenGLComponent.cpp"; path = "../../src/native/linux/juce_linux_OpenGLComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - 5DEA687D261C59CBABB782E9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_SystemStats.cpp"; path = "../../src/native/linux/juce_linux_SystemStats.cpp"; sourceTree = "SOURCE_ROOT"; }; - 5593DEC14D551C38CCB50D70 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Threads.cpp"; path = "../../src/native/linux/juce_linux_Threads.cpp"; sourceTree = "SOURCE_ROOT"; }; - B8E47498C7C6D5ECF41F0EAB = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_WebBrowserComponent.cpp"; path = "../../src/native/linux/juce_linux_WebBrowserComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - 9DC2C10B16A645EEB82220D8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Windowing.cpp"; path = "../../src/native/linux/juce_linux_Windowing.cpp"; sourceTree = "SOURCE_ROOT"; }; - EE5F18DF1DED7617C4A41FF3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ios_Audio.cpp"; path = "../../src/native/mac/juce_ios_Audio.cpp"; sourceTree = "SOURCE_ROOT"; }; - B2BCE9DDC8F0F54CA3D913E7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_ios_MessageManager.mm"; path = "../../src/native/mac/juce_ios_MessageManager.mm"; sourceTree = "SOURCE_ROOT"; }; - 5249EFBE3B22E6FC1A7B6D42 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_ios_UIViewComponentPeer.mm"; path = "../../src/native/mac/juce_ios_UIViewComponentPeer.mm"; sourceTree = "SOURCE_ROOT"; }; - A257B76FCE9D594EAD41414C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_ios_Windowing.mm"; path = "../../src/native/mac/juce_ios_Windowing.mm"; sourceTree = "SOURCE_ROOT"; }; - 8280AA34B23B4D366711A9E7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_AppleRemote.mm"; path = "../../src/native/mac/juce_mac_AppleRemote.mm"; sourceTree = "SOURCE_ROOT"; }; - C9561A66310DAD5EEB4A9462 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_AudioCDBurner.mm"; path = "../../src/native/mac/juce_mac_AudioCDBurner.mm"; sourceTree = "SOURCE_ROOT"; }; - B62991F8AEE7327BA8A5070F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_AudioCDReader.mm"; path = "../../src/native/mac/juce_mac_AudioCDReader.mm"; sourceTree = "SOURCE_ROOT"; }; - 013F753639A6350C8DC602AD = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_CameraDevice.mm"; path = "../../src/native/mac/juce_mac_CameraDevice.mm"; sourceTree = "SOURCE_ROOT"; }; - 6B46AB1931E43DAFB278D23D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_mac_CarbonViewWrapperComponent.h"; path = "../../src/native/mac/juce_mac_CarbonViewWrapperComponent.h"; sourceTree = "SOURCE_ROOT"; }; - 72524FE185FF48DC1F954341 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_mac_CoreAudio.cpp"; path = "../../src/native/mac/juce_mac_CoreAudio.cpp"; sourceTree = "SOURCE_ROOT"; }; - BF5307F364AC9250D8625168 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_CoreGraphicsContext.mm"; path = "../../src/native/mac/juce_mac_CoreGraphicsContext.mm"; sourceTree = "SOURCE_ROOT"; }; - AA4823F2F2A78C43D7A039D0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_mac_CoreMidi.cpp"; path = "../../src/native/mac/juce_mac_CoreMidi.cpp"; sourceTree = "SOURCE_ROOT"; }; - 87A5A064CC3CD55BA5D7617D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_FileChooser.mm"; path = "../../src/native/mac/juce_mac_FileChooser.mm"; sourceTree = "SOURCE_ROOT"; }; - 641638A0466CEC1BDEAFB476 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_Files.mm"; path = "../../src/native/mac/juce_mac_Files.mm"; sourceTree = "SOURCE_ROOT"; }; - 7DB37383434F45D8A7B674C3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_Fonts.mm"; path = "../../src/native/mac/juce_mac_Fonts.mm"; sourceTree = "SOURCE_ROOT"; }; - CB16B2438EDCC10C499645E6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_MainMenu.mm"; path = "../../src/native/mac/juce_mac_MainMenu.mm"; sourceTree = "SOURCE_ROOT"; }; - BEB35C6173793C1CB7AB6311 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_MessageManager.mm"; path = "../../src/native/mac/juce_mac_MessageManager.mm"; sourceTree = "SOURCE_ROOT"; }; - BA58B49B820A47F6F55CDACB = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_MouseCursor.mm"; path = "../../src/native/mac/juce_mac_MouseCursor.mm"; sourceTree = "SOURCE_ROOT"; }; - 930E58E13FC92BF70AC20EEF = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_NativeCode.mm"; path = "../../src/native/mac/juce_mac_NativeCode.mm"; sourceTree = "SOURCE_ROOT"; }; - 2F1812B26076D9CC1495D452 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_mac_NativeIncludes.h"; path = "../../src/native/mac/juce_mac_NativeIncludes.h"; sourceTree = "SOURCE_ROOT"; }; - 9113CDD122D2790E147A8CF5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_Network.mm"; path = "../../src/native/mac/juce_mac_Network.mm"; sourceTree = "SOURCE_ROOT"; }; - EE56999A85AF18015C540183 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_NSViewComponent.mm"; path = "../../src/native/mac/juce_mac_NSViewComponent.mm"; sourceTree = "SOURCE_ROOT"; }; - 189F69E0B926C73B654D6951 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_NSViewComponentPeer.mm"; path = "../../src/native/mac/juce_mac_NSViewComponentPeer.mm"; sourceTree = "SOURCE_ROOT"; }; - B9E16F4636FF8C0A1FC8BEFB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_mac_ObjCSuffix.h"; path = "../../src/native/mac/juce_mac_ObjCSuffix.h"; sourceTree = "SOURCE_ROOT"; }; - AE9A7A0775FA806126A74E16 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_OpenGLComponent.mm"; path = "../../src/native/mac/juce_mac_OpenGLComponent.mm"; sourceTree = "SOURCE_ROOT"; }; - 4F5D1AA83981FBCD33CE234F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_QuickTimeMovieComponent.mm"; path = "../../src/native/mac/juce_mac_QuickTimeMovieComponent.mm"; sourceTree = "SOURCE_ROOT"; }; - E6A7BFB0FCD17A9B133CDFA4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_Strings.mm"; path = "../../src/native/mac/juce_mac_Strings.mm"; sourceTree = "SOURCE_ROOT"; }; - FE6E3F911679B0D7547577A3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_SystemStats.mm"; path = "../../src/native/mac/juce_mac_SystemStats.mm"; sourceTree = "SOURCE_ROOT"; }; - 8BCE60CBC91DBAAB089958A1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_Threads.mm"; path = "../../src/native/mac/juce_mac_Threads.mm"; sourceTree = "SOURCE_ROOT"; }; - 3F11593DC3A168A52FCC2DD9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_WebBrowserComponent.mm"; path = "../../src/native/mac/juce_mac_WebBrowserComponent.mm"; sourceTree = "SOURCE_ROOT"; }; - FC2C82760E717788B5A6E691 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_Windowing.mm"; path = "../../src/native/mac/juce_mac_Windowing.mm"; sourceTree = "SOURCE_ROOT"; }; - AB0F3F5A622CBB251F64945A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_osx_MessageQueue.h"; path = "../../src/native/mac/juce_osx_MessageQueue.h"; sourceTree = "SOURCE_ROOT"; }; - AD495FA1991295C722B46843 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_osx_ObjCHelpers.h"; path = "../../src/native/mac/juce_osx_ObjCHelpers.h"; sourceTree = "SOURCE_ROOT"; }; - 42059626955C547DA6AD3196 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_ActiveXComponent.cpp"; path = "../../src/native/windows/juce_win32_ActiveXComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - 8F383A785B4876198C5B0194 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_ASIO.cpp"; path = "../../src/native/windows/juce_win32_ASIO.cpp"; sourceTree = "SOURCE_ROOT"; }; - F3B50EE3939E9F16D13C3C7C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_AudioCDReader.cpp"; path = "../../src/native/windows/juce_win32_AudioCDReader.cpp"; sourceTree = "SOURCE_ROOT"; }; - 9C4D1018ECC0BA07346453EF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_win32_AutoLinkLibraries.h"; path = "../../src/native/windows/juce_win32_AutoLinkLibraries.h"; sourceTree = "SOURCE_ROOT"; }; - 3A37CD82212075940421CE4F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_CameraDevice.cpp"; path = "../../src/native/windows/juce_win32_CameraDevice.cpp"; sourceTree = "SOURCE_ROOT"; }; - B296F736C0CD6AC15BE6424B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_win32_ComSmartPtr.h"; path = "../../src/native/windows/juce_win32_ComSmartPtr.h"; sourceTree = "SOURCE_ROOT"; }; - 7F3EF672D07ECE3E13AAF267 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Direct2DGraphicsContext.cpp"; path = "../../src/native/windows/juce_win32_Direct2DGraphicsContext.cpp"; sourceTree = "SOURCE_ROOT"; }; - 249959E338D7750E56A9F2F8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_DirectShowComponent.cpp"; path = "../../src/native/windows/juce_win32_DirectShowComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - 58B70C726D186B4E770300BC = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_DirectSound.cpp"; path = "../../src/native/windows/juce_win32_DirectSound.cpp"; sourceTree = "SOURCE_ROOT"; }; - DCD09B6EF4A4A109DE01F152 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_FileChooser.cpp"; path = "../../src/native/windows/juce_win32_FileChooser.cpp"; sourceTree = "SOURCE_ROOT"; }; - 7527A5E8F4F39581159D3E5B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Files.cpp"; path = "../../src/native/windows/juce_win32_Files.cpp"; sourceTree = "SOURCE_ROOT"; }; - 1DBF9DAAD0690CB2CA4E9960 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Fonts.cpp"; path = "../../src/native/windows/juce_win32_Fonts.cpp"; sourceTree = "SOURCE_ROOT"; }; - E9B203E963EB1AB566061AC1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_win32_HiddenMessageWindow.h"; path = "../../src/native/windows/juce_win32_HiddenMessageWindow.h"; sourceTree = "SOURCE_ROOT"; }; - BA561E64C6400CFB1DE013F6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Messaging.cpp"; path = "../../src/native/windows/juce_win32_Messaging.cpp"; sourceTree = "SOURCE_ROOT"; }; - 061B492EABD6B1C995D581A8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Midi.cpp"; path = "../../src/native/windows/juce_win32_Midi.cpp"; sourceTree = "SOURCE_ROOT"; }; - 50159A5B7A552A6C1EB557F3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_NativeCode.cpp"; path = "../../src/native/windows/juce_win32_NativeCode.cpp"; sourceTree = "SOURCE_ROOT"; }; - E7625D7A06CBC11F40A56A70 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_win32_NativeIncludes.h"; path = "../../src/native/windows/juce_win32_NativeIncludes.h"; sourceTree = "SOURCE_ROOT"; }; - CDA5FCC51F6C1E84D7DC3274 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Network.cpp"; path = "../../src/native/windows/juce_win32_Network.cpp"; sourceTree = "SOURCE_ROOT"; }; - B14735381ADB00741166E330 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_OpenGLComponent.cpp"; path = "../../src/native/windows/juce_win32_OpenGLComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - 09AE0882D58BE1715219556A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_QuickTimeMovieComponent.cpp"; path = "../../src/native/windows/juce_win32_QuickTimeMovieComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - 0EB41C0AB478EE02D8C851F9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Registry.cpp"; path = "../../src/native/windows/juce_win32_Registry.cpp"; sourceTree = "SOURCE_ROOT"; }; - FBE07C5CC622A5D36BDAB9E1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_SystemStats.cpp"; path = "../../src/native/windows/juce_win32_SystemStats.cpp"; sourceTree = "SOURCE_ROOT"; }; - B07C853EB60D8D8691BC1B4B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Threads.cpp"; path = "../../src/native/windows/juce_win32_Threads.cpp"; sourceTree = "SOURCE_ROOT"; }; - 5D32C8856093B33438AEB758 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_WASAPI.cpp"; path = "../../src/native/windows/juce_win32_WASAPI.cpp"; sourceTree = "SOURCE_ROOT"; }; - 8758E6857070D7E5406FDE3F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_WebBrowserComponent.cpp"; path = "../../src/native/windows/juce_win32_WebBrowserComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - 8E8BE2F1C182E418BBA6903C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Windowing.cpp"; path = "../../src/native/windows/juce_win32_Windowing.cpp"; sourceTree = "SOURCE_ROOT"; }; - 03B9D3D9042E85BDD691325E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Audio.cpp"; path = "../../src/native/android/juce_android_Audio.cpp"; sourceTree = "SOURCE_ROOT"; }; - 13C661B79E1E9508512A6B21 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_CameraDevice.cpp"; path = "../../src/native/android/juce_android_CameraDevice.cpp"; sourceTree = "SOURCE_ROOT"; }; - F2F68E50F42BD0F124E89E2C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_FileChooser.cpp"; path = "../../src/native/android/juce_android_FileChooser.cpp"; sourceTree = "SOURCE_ROOT"; }; - 59C46E289F86C80D4341EAA3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Files.cpp"; path = "../../src/native/android/juce_android_Files.cpp"; sourceTree = "SOURCE_ROOT"; }; - FA82460758BDCB2DCCE1EAAA = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Fonts.cpp"; path = "../../src/native/android/juce_android_Fonts.cpp"; sourceTree = "SOURCE_ROOT"; }; - CE06EEED7426AA45C27B629C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_GraphicsContext.cpp"; path = "../../src/native/android/juce_android_GraphicsContext.cpp"; sourceTree = "SOURCE_ROOT"; }; - F439E6C4B2D2AF19645252C0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_android_JNIHelpers.h"; path = "../../src/native/android/juce_android_JNIHelpers.h"; sourceTree = "SOURCE_ROOT"; }; - 1D74C9567283836ECC70E48B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Messaging.cpp"; path = "../../src/native/android/juce_android_Messaging.cpp"; sourceTree = "SOURCE_ROOT"; }; - 40216CE846A54CE706131A23 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Midi.cpp"; path = "../../src/native/android/juce_android_Midi.cpp"; sourceTree = "SOURCE_ROOT"; }; - E646726910F110DC34DD1662 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Misc.cpp"; path = "../../src/native/android/juce_android_Misc.cpp"; sourceTree = "SOURCE_ROOT"; }; - 9AF9F1C0D766D4F894E4A7B0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_NativeCode.cpp"; path = "../../src/native/android/juce_android_NativeCode.cpp"; sourceTree = "SOURCE_ROOT"; }; - 902C32F471DA6C435E80372B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_android_NativeIncludes.h"; path = "../../src/native/android/juce_android_NativeIncludes.h"; sourceTree = "SOURCE_ROOT"; }; - A404CD721E2A0F0CAE9326C5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Network.cpp"; path = "../../src/native/android/juce_android_Network.cpp"; sourceTree = "SOURCE_ROOT"; }; - 32B7C3609BDA01AA09740139 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_OpenGLComponent.cpp"; path = "../../src/native/android/juce_android_OpenGLComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - CEF7210E311274F1DFAB6882 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_SystemStats.cpp"; path = "../../src/native/android/juce_android_SystemStats.cpp"; sourceTree = "SOURCE_ROOT"; }; - 755C440534C0EB494572B3F3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Threads.cpp"; path = "../../src/native/android/juce_android_Threads.cpp"; sourceTree = "SOURCE_ROOT"; }; - EE855319AF344A05C92580C7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_WebBrowserComponent.cpp"; path = "../../src/native/android/juce_android_WebBrowserComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - FCD02A40985242A8A6648311 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Windowing.cpp"; path = "../../src/native/android/juce_android_Windowing.cpp"; sourceTree = "SOURCE_ROOT"; }; - 76E2084D2148068F9138A816 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_CharacterFunctions.cpp"; path = "../../src/text/juce_CharacterFunctions.cpp"; sourceTree = "SOURCE_ROOT"; }; - 33F16EE4F38C9B76E7FAEF78 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CharacterFunctions.h"; path = "../../src/text/juce_CharacterFunctions.h"; sourceTree = "SOURCE_ROOT"; }; - 72F5ED2E8B945988C37EA9CF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CharPointer_ASCII.h"; path = "../../src/text/juce_CharPointer_ASCII.h"; sourceTree = "SOURCE_ROOT"; }; - 663746215E9BA6C761172B85 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CharPointer_UTF16.h"; path = "../../src/text/juce_CharPointer_UTF16.h"; sourceTree = "SOURCE_ROOT"; }; - C3FD9D93626F80A45F9B6DDE = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CharPointer_UTF32.h"; path = "../../src/text/juce_CharPointer_UTF32.h"; sourceTree = "SOURCE_ROOT"; }; - 4007410FACA2F865FD8EF769 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CharPointer_UTF8.h"; path = "../../src/text/juce_CharPointer_UTF8.h"; sourceTree = "SOURCE_ROOT"; }; - 8273A206FB309671284959DD = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Identifier.cpp"; path = "../../src/text/juce_Identifier.cpp"; sourceTree = "SOURCE_ROOT"; }; - BF888BC540B64D5C61E46A34 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Identifier.h"; path = "../../src/text/juce_Identifier.h"; sourceTree = "SOURCE_ROOT"; }; - 644FD6155385BC3AA270FB5D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_JSON.cpp"; path = "../../src/text/juce_JSON.cpp"; sourceTree = "SOURCE_ROOT"; }; - CB092FB152F43900272F8E43 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_JSON.h"; path = "../../src/text/juce_JSON.h"; sourceTree = "SOURCE_ROOT"; }; - 4A97C8D2FF6454DDD3AF4BE5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_LocalisedStrings.cpp"; path = "../../src/text/juce_LocalisedStrings.cpp"; sourceTree = "SOURCE_ROOT"; }; - 2AA21CDC91EA122266EBD780 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LocalisedStrings.h"; path = "../../src/text/juce_LocalisedStrings.h"; sourceTree = "SOURCE_ROOT"; }; - 35DA3E75DDB03BB35794289B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_NewLine.h"; path = "../../src/text/juce_NewLine.h"; sourceTree = "SOURCE_ROOT"; }; - B507B4A8712A54D7A8C03223 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_String.cpp"; path = "../../src/text/juce_String.cpp"; sourceTree = "SOURCE_ROOT"; }; - 1EE2A763E06AF4951024950F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_String.h"; path = "../../src/text/juce_String.h"; sourceTree = "SOURCE_ROOT"; }; - 23252E4C97AEFAE0C5EEAA77 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_StringArray.cpp"; path = "../../src/text/juce_StringArray.cpp"; sourceTree = "SOURCE_ROOT"; }; - D4FED84C92ADC4B2C41A4275 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_StringArray.h"; path = "../../src/text/juce_StringArray.h"; sourceTree = "SOURCE_ROOT"; }; - 81B36E7C56DF1A777AA04F71 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_StringPairArray.cpp"; path = "../../src/text/juce_StringPairArray.cpp"; sourceTree = "SOURCE_ROOT"; }; - E5458BE2F33DBBF5AF834BB6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_StringPairArray.h"; path = "../../src/text/juce_StringPairArray.h"; sourceTree = "SOURCE_ROOT"; }; - 0EC7DE81A516F4130AC59557 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_StringPool.cpp"; path = "../../src/text/juce_StringPool.cpp"; sourceTree = "SOURCE_ROOT"; }; - C972C24A7D2FC817362E1FD7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_StringPool.h"; path = "../../src/text/juce_StringPool.h"; sourceTree = "SOURCE_ROOT"; }; - 5715BC14D93D61D71206FCB2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_XmlDocument.cpp"; path = "../../src/text/juce_XmlDocument.cpp"; sourceTree = "SOURCE_ROOT"; }; - B4575FEE10C67D45C9532540 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_XmlDocument.h"; path = "../../src/text/juce_XmlDocument.h"; sourceTree = "SOURCE_ROOT"; }; - 95F21C2733BD5932372E4157 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_XmlElement.cpp"; path = "../../src/text/juce_XmlElement.cpp"; sourceTree = "SOURCE_ROOT"; }; - 4EF8C44FF03700F6140950F3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_XmlElement.h"; path = "../../src/text/juce_XmlElement.h"; sourceTree = "SOURCE_ROOT"; }; - 40282E23D43D86D122CA5C54 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CriticalSection.h"; path = "../../src/threads/juce_CriticalSection.h"; sourceTree = "SOURCE_ROOT"; }; - EC240B4379FB70C8A8AC2855 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DynamicLibrary.h"; path = "../../src/threads/juce_DynamicLibrary.h"; sourceTree = "SOURCE_ROOT"; }; - 5508D42FCF7A1C8A8CD78BF0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_InterProcessLock.h"; path = "../../src/threads/juce_InterProcessLock.h"; sourceTree = "SOURCE_ROOT"; }; - 90E4999A78655A238AF42BC0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Process.h"; path = "../../src/threads/juce_Process.h"; sourceTree = "SOURCE_ROOT"; }; - 8E78623B2D21CFE68DEC0483 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ReadWriteLock.cpp"; path = "../../src/threads/juce_ReadWriteLock.cpp"; sourceTree = "SOURCE_ROOT"; }; - 9E622C38E4BD511B6ABBF7AA = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ReadWriteLock.h"; path = "../../src/threads/juce_ReadWriteLock.h"; sourceTree = "SOURCE_ROOT"; }; - 6734838B47EF0D9ACEE571CD = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ScopedLock.h"; path = "../../src/threads/juce_ScopedLock.h"; sourceTree = "SOURCE_ROOT"; }; - F00BDEF5CE2B281CBE2E89A2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ScopedReadLock.h"; path = "../../src/threads/juce_ScopedReadLock.h"; sourceTree = "SOURCE_ROOT"; }; - C5F20B02D7843F3C5ABEDFD4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ScopedWriteLock.h"; path = "../../src/threads/juce_ScopedWriteLock.h"; sourceTree = "SOURCE_ROOT"; }; - 1FD1C9A3D2DB64C825FDAC8B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SpinLock.h"; path = "../../src/threads/juce_SpinLock.h"; sourceTree = "SOURCE_ROOT"; }; - 4D60F7F748CF6702D1E45960 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Thread.cpp"; path = "../../src/threads/juce_Thread.cpp"; sourceTree = "SOURCE_ROOT"; }; - EFE26D4E1E2B92828DBA3A99 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Thread.h"; path = "../../src/threads/juce_Thread.h"; sourceTree = "SOURCE_ROOT"; }; - EF06213027EA3F7C54EE0F18 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ThreadPool.cpp"; path = "../../src/threads/juce_ThreadPool.cpp"; sourceTree = "SOURCE_ROOT"; }; - C25E5F90524645D684C674CB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ThreadPool.h"; path = "../../src/threads/juce_ThreadPool.h"; sourceTree = "SOURCE_ROOT"; }; - 60F21CB42270ACE2241544A8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TimeSliceThread.cpp"; path = "../../src/threads/juce_TimeSliceThread.cpp"; sourceTree = "SOURCE_ROOT"; }; - ED84C92ADC4B2C41A4275F92 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TimeSliceThread.h"; path = "../../src/threads/juce_TimeSliceThread.h"; sourceTree = "SOURCE_ROOT"; }; - 3268C8DBAB23CF503BF30935 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_WaitableEvent.h"; path = "../../src/threads/juce_WaitableEvent.h"; sourceTree = "SOURCE_ROOT"; }; - B4435D42216365FA97651272 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DeletedAtShutdown.cpp"; path = "../../src/utilities/juce_DeletedAtShutdown.cpp"; sourceTree = "SOURCE_ROOT"; }; - CE216F2485CD5EFEA91554F5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DeletedAtShutdown.h"; path = "../../src/utilities/juce_DeletedAtShutdown.h"; sourceTree = "SOURCE_ROOT"; }; - 599F5C47BB9B5898E0E88CF3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileBasedDocument.cpp"; path = "../../src/utilities/juce_FileBasedDocument.cpp"; sourceTree = "SOURCE_ROOT"; }; - 9620E4769876FC01ECE885D1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileBasedDocument.h"; path = "../../src/utilities/juce_FileBasedDocument.h"; sourceTree = "SOURCE_ROOT"; }; - 4BE2727CCD2CD7603402C8FE = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PropertiesFile.cpp"; path = "../../src/utilities/juce_PropertiesFile.cpp"; sourceTree = "SOURCE_ROOT"; }; - 7FDACEA80794451691A12703 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PropertiesFile.h"; path = "../../src/utilities/juce_PropertiesFile.h"; sourceTree = "SOURCE_ROOT"; }; - A618FC3255ECE14EC9259E6B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RecentlyOpenedFilesList.cpp"; path = "../../src/utilities/juce_RecentlyOpenedFilesList.cpp"; sourceTree = "SOURCE_ROOT"; }; - A2D6317BEEC77A62E8F834AF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RecentlyOpenedFilesList.h"; path = "../../src/utilities/juce_RecentlyOpenedFilesList.h"; sourceTree = "SOURCE_ROOT"; }; - 7F1AC20BE8A18CA6BB7403EC = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SelectedItemSet.h"; path = "../../src/utilities/juce_SelectedItemSet.h"; sourceTree = "SOURCE_ROOT"; }; - FA833EFA9E93C7DBE6624676 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SystemClipboard.h"; path = "../../src/utilities/juce_SystemClipboard.h"; sourceTree = "SOURCE_ROOT"; }; - EECE464606AE845BFC4B941B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_UndoableAction.h"; path = "../../src/utilities/juce_UndoableAction.h"; sourceTree = "SOURCE_ROOT"; }; - A59A5DCFCCAAEA79D03C2B27 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_UndoManager.cpp"; path = "../../src/utilities/juce_UndoManager.cpp"; sourceTree = "SOURCE_ROOT"; }; - 3C9E6597968358B57374502C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_UndoManager.h"; path = "../../src/utilities/juce_UndoManager.h"; sourceTree = "SOURCE_ROOT"; }; - ADE5F12AA5AD969E2C7002B3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_UnitTest.cpp"; path = "../../src/utilities/juce_UnitTest.cpp"; sourceTree = "SOURCE_ROOT"; }; - 75700D13513346310CEAC30D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_UnitTest.h"; path = "../../src/utilities/juce_UnitTest.h"; sourceTree = "SOURCE_ROOT"; }; - AAC585C4648559DD713F28FE = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_WindowsRegistry.h"; path = "../../src/utilities/juce_WindowsRegistry.h"; sourceTree = "SOURCE_ROOT"; }; - 2FD5C998952BE08F8ED3F262 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = juce.h; path = ../../juce.h; sourceTree = "SOURCE_ROOT"; }; - 01778F26212AECCBF2452804 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Config.h"; path = "../../juce_Config.h"; sourceTree = "SOURCE_ROOT"; }; - D443FD24B52106986FC8A531 = { isa = PBXGroup; children = ( - 144F56FCF3DF9EC922765901, - F6A490BA93AC3558E9A6FBB0, - CB9766F7A9C612B326D808CB, - 36A407F2BE4A625184B5CCFD, - 4E74130693EE120D905818AC, - 21E1DBFAB3FB75875EA35280, - EDF52AB382E80530E8FED9A0, - 415BD77DF4B2F4760D138735, - 8422E662212FA2082644A942, - BA97FEDA576503A21D971F1E, - E03C84620DCB004172C09B28 ); name = application; sourceTree = ""; }; - 2038F3EDCC94040C77D7620C = { isa = PBXGroup; children = ( - 1AA8BE2D76E153874FB08197, - 05C5C546E12C6422D865D864, - 1F5A667524FB005D872340E1, - 0877D5750D6F21C5231687CA, - 1BBE03BB0D71FEEEA440682B, - 7D85530D76756C33795ECCE9, - 013E8938EE1C6B4F63016B55, - 93006D32B18174D9FE0A5E9E, - 41070806F82EC9C6D1C67689, - 9349E14552FEA0371553E808, - 27356F5E93CEA4D472D83D8E, - 2AD64F53E12B20011B7A0DB7, - 8BD38C2507C0F8E28930A4F8, - 59597FA0A88A08937801D198, - AE7F7F0D959C2E3CF5989C88, - 27C3C51DF2519B519B76E2EE, - 7B34E897026857C84399A09C, - CB32D4EE59D5CA9DB12F944D, - 3442FA257104DC3F43E7F870, - 203AC66FFB20EAD2E7A594BD, - C9F1015CA457A61082398E34, - E00781B15E47C9CB9E94869D, - 7C06BD13BF7E0097EB0A8D08, - DA868174D4D2059AC1BE7E71, - 25B1AC1A6767AAD9E9515A18, - 7CF036906034FABB44D2108F, - DB5CAB7BC2973ABFF0867BCB, - D5D2FD212300E7D49ED74823, - 87A18C425F53C2098B1D42FE ); name = "audio_file_formats"; sourceTree = ""; }; - A319A40925DF075E2C31C2FC = { isa = PBXGroup; children = ( - 7AE5295A472723B26537FAEC, - 51287E236C749092458BA2DD, - 4C3258A1978AF3D357D196C6, - FBB2EEF0E5EC5EB6F89E9066, - AE9C08108699C71A289462B7, - 74AD63909D3EE09D63256A76, - 67A8F408B1EC63407C9241B2, - 5D6E837F124C347B3C1CAE23, - E1EA83B7EF928DC88D069AEC, - 1511366CAD437989DAA30CF2, - EA630BFFF638BBBC8FDC0018, - D86718CE7E5DEF2071AC3D17, - 76BB7F75A7F9930ED5A0CDB6, - 9A8053936C35A19B9E98623A, - 9CB1126A9FBFF1D6D6469AF9, - C63D6EC0555C13C1B79A6AAD, - E2A56C23BF2BB466BB273E3E, - BE5DB55285441D501FED3C00, - 5403C2A4DEE7B9B3B34235F8, - 0F70C4D118AC7625B4C42CD4, - 3988438157D4B75177703F8A, - 6AC857F51FD805D7BD3EF712 ); name = "audio_sources"; sourceTree = ""; }; - BF8F3D00CE4E97468E8BBC55 = { isa = PBXGroup; children = ( - 6841D6AC927D02113F3AEBD4, - E668D9C7FF084E59405A2A9E, - C7DB1BB9AF7FE0A2AA38D767, - 95CA8EE24AFBB1F2F29A5394, - EAFD034BB1721BFBF9A3795E, - EFAFC937377A21E9AC0F9776 ); name = devices; sourceTree = ""; }; - 53C441C8EEF2860715CC6599 = { isa = PBXGroup; children = ( - 5DB9D903D24646B0C2356A5D, - EBA6B46F7B3C11CA3744A4D0, - A1D687AE613A8B61EB63923D, - 812620B53BE820D26A63B65D, - 11C1A96A35A2F03F8C34BD43, - E68EB4BC75216B5B56E3F937, - EE2259D9768027C2C001EEAD, - 2C55CE1674244DB199C3033F ); name = dsp; sourceTree = ""; }; - 99B60B012D5CCF0BD861011D = { isa = PBXGroup; children = ( - B457515938E7141D5E79B671, - 0604C2E17F0E0DFEFDA19F8D, - 891E0B1AD09C0EA44297E0F2, - EBACA038DBB50817BE80E8C5, - C376B06C58C5D3C972583BBB, - 0731C60911E6985F51325484, - 062F7ACF5282C5B2D4BF5EE1, - DF3833AF6E38E55218FDF23F, - C627F9E9EC160055D65D81CB, - 0D3A77572C7256CE4C115FD7, - A22A0F77C15B1E4A8F2EB42A, - 78D29BB5C76CCF7C21EC0DAF, - DD3886D45B5988B4DAC2D049, - 01712FF0A160032FA1DAA8C2, - 899BD7E18BE1EF7CDF53784C ); name = midi; sourceTree = ""; }; - 844109733F09B5915AF75797 = { isa = PBXGroup; children = ( - 7B88F6B8E3A10CEAD9B0EE88 ); name = AU; sourceTree = ""; }; - FAA6189E385BD13EFEFE2E08 = { isa = PBXGroup; children = ( - 1101E8CB676FDEEF0A89D921, - F222E5825D83E711C9F1B789, - CEAA2B84462EF0B5026EAB0A, - 9A3151864FB90A6A4BCCAE9B, - BCE37F0D994C0ADF2CCFF796, - F52ECCD6C02108A2D7F672F5, - 833C3F205F05BA4ADC883E53 ); name = RTAS; sourceTree = ""; }; - EBF4EE8E84A562DE2EBAE6BB = { isa = PBXGroup; children = ( - 69C4FF0DD888BA25477561C8, - 37E1FC756833849B8C7C1215 ); name = VST; sourceTree = ""; }; - 0F0D49D13522C94A0F37D4AB = { isa = PBXGroup; children = ( - 2741189DF800566462E24A14, - FAC43251D74E5140740BEF60 ); name = Standalone; sourceTree = ""; }; - 2805C9C796CD7D77C2D662BF = { isa = PBXGroup; children = ( - 844109733F09B5915AF75797, - FAA6189E385BD13EFEFE2E08, - EBF4EE8E84A562DE2EBAE6BB, - 0F0D49D13522C94A0F37D4AB, - 2E96F55074F4EB74171EE6B6, - 13F64389F0E25731A98E92CD, - 7CDC2FA849B7ED73A2638A11 ); name = "plugin_client"; sourceTree = ""; }; - B1F82C796B56FCD97D211D8E = { isa = PBXGroup; children = ( - D76BDCCF9E1A1F26A8F578F0, - 50FAF92038EBD0127900AAA1, - 2073E1A497363200233CD34E, - F800E47459B2FE9DEF56F312, - B4291F2CEEC78CFEDEFC360E, - FCBB1DC14311D099809B21F7, - 723EBD80931754F4DD77DD53, - 2EBF36FAAF019B6F811D1C84 ); name = formats; sourceTree = ""; }; - 7AA82894558E047D7D5111E1 = { isa = PBXGroup; children = ( - B1F82C796B56FCD97D211D8E, - 1C8211DFB558D740EF4B173A, - 28534632DF76A1EA837BD0D7, - DA4820727D6DDC75561A262C, - A6415104D1E3E5CE7031C0C1, - E5BA7B8913271E935A1DA487, - 3110B983ACE956D6A24F8C8C, - A3FE51C7DD706F536273AB0E, - B6E20AE45813C0CA9B1014DD, - 4AE3A448D79602BE793BB5AA, - AF47BC3796A74CC15A192E8B, - 3D170AC8FD8E403C54E08F9D, - 9C5C0BCB2A298160025B15FC, - 08C65C3EB60FE8BFA252E3EF ); name = "plugin_host"; sourceTree = ""; }; - 231431F8B23F01DC6ECD4214 = { isa = PBXGroup; children = ( - 4CF107951746567DB63880A3, - AB554593165FE8C8B40F4447, - 3F260C24341E58745AC5BE79, - BC2A50B0B01128E394E9DE9C, - EC0F8FAA7EACE0D275064D60, - D141C024A3F5A6748B0E9ED7, - 19C9509EC7DD00DA7443DEFC, - ABDE16ABC1784B0FD3887A8F, - 08EBC2152F45FB2B839FCCC1, - 350428D4D70AAB88B2B84790, - 096CF2243648F17E1BF5421B, - CAD3312170E5DBE8AA8348BA ); name = processors; sourceTree = ""; }; - DC641C77950A335A20FD4532 = { isa = PBXGroup; children = ( - ED5966B95F865C586A3CE08F, - 6C6C1C360138D9BD4B27588B, - 35668D8EEA19957C6C9AC83A, - 9E6C206F95245BCDE38FB2B5 ); name = synthesisers; sourceTree = ""; }; - F2B0E44A08E127FD31184241 = { isa = PBXGroup; children = ( - 2038F3EDCC94040C77D7620C, - A319A40925DF075E2C31C2FC, - BF8F3D00CE4E97468E8BBC55, - 53C441C8EEF2860715CC6599, - 99B60B012D5CCF0BD861011D, - 2805C9C796CD7D77C2D662BF, - 7AA82894558E047D7D5111E1, - 231431F8B23F01DC6ECD4214, - DC641C77950A335A20FD4532 ); name = audio; sourceTree = ""; }; - 1CC2889DB696E12FC34E3F50 = { isa = PBXGroup; children = ( - 4F22276689685D839BD252EA, - 9584B84F23A4251755D49213, - 839BE8047CF2F8EBE43ED34F, - EDF52FDF87ACD33FE933142C, - F77C9170829579FABA5679AD, - 34C402EF9ADCAD34FB657D43, - 7DA9AC75A4D9227C8FC4B2F7, - 2767E1D082874D301D5D5F43, - 9289A1E6B141F24C57FF0927, - 70E5409425A76782B6188B31, - BB4A73064B0FC74ECCA19116, - C1913C90ED7BE51E823887CD, - 9BD379D2F7995BFE0B3E5369, - C8F0F54CA3D913E7B8D559CF, - D7612CE51ED4F9D3F960F922, - F95BC2FA7861CFF968D661ED, - 2F5FD1DEFAE549553A8BE3B1, - 989E03031D341649B4A296F5, - 1809284DD05B56309D7EA24F, - 69F58BF234EDF6328F624E0A, - 5D27EE211D9BFF6A58C4DC42, - 7CABDD863B47D8ADC900A4D8, - 4DF9D333038A442870668D31, - A81B4FC81A75E21E5B96E506 ); name = containers; sourceTree = ""; }; - 1AF37A533ABDD889670F9349 = { isa = PBXGroup; children = ( - D66C00E06B06EAD3B5257DD6, - C8441B7B3E4CCD4A257B4BFE, - 92ACFFCCCD1C85A0F8C6F80F, - 4555F03DBD059EEDECEF9F85, - 63F44EC0485FCA050814967E, - DF6CAC67C0F2D379BDA03062, - 1159C6BB0D33EE8E1A96B083, - 8292AE37F99FCC1E5BF63A28, - CFAECB6551F48A1695DEC243, - B4137E4612C1D161894D0D27, - 0AD73B8EA0D60D9927B36624, - F51969AF328D2C7D52D7436D, - C25D6136DF9CE441D6EB4C42, - CA66415F6EAA172B83755954, - 18B170E96511BBA1019C66F8, - 45D14EF360BDA1F5692E583D, - 956A1C30D5FE98DBB154204D, - 8D2DE1F3CB15D003C90042E7, - 872020C1EC3997ED744BF1BD, - CEF91E0C9CBB3EBFF9500FDA, - 297B664E9AB86DFE7DCAFF22 ); name = core; sourceTree = ""; }; - 2B74AFA66B37B748487152F4 = { isa = PBXGroup; children = ( - E3C548295935D26121D5D823, - 7A4B0E6FD686BCF0B8CC771E, - EAFD8FAF365DFB32DC42D0E7, - 6E4345FEEB1DC732A16134A4, - E9E692847C14AD33CD5FB40B, - 22612DBDC6C689B605CC6B48, - 7AE9331938549244E27A5D0E, - 16335266AFB4D19F25410E1D, - 4CBD301A08E9C3762F861FC3, - 02CD7BA1750DE36237369F78 ); name = cryptography; sourceTree = ""; }; - 89F308FD85F378E278C98884 = { isa = PBXGroup; children = ( - 31D985CB8646B78460E9D5A7, - 09F7685D1EFF472ECB1F5EF1, - 4EF8BD4BF46C4BCB39F96609, - 5EB7BD94A754E88D076D777A, - 1617348BBF5D103619D76911, - 44DB44953945417F76199479, - D04B6E43A037F985434B2F5A, - B80F8CD026033ACCCE11A1A4, - 5F454A6B5A82ECE2396C5716, - B2D08C8EEE3E22026533D2EA, - AE68ECB6E063BD8D4984C0B3, - 4B935D7360C9F166C80A158D, - 843A7B398E9411F0AF28D65D, - 57DD8EEE88C0D366E0354478, - 80633D64E9EFA1433454669B, - 9CF077D3ED7B7B56F351AAF6, - 7A1219C6560BDBE2E170D2A9, - E594F70DC2F292FF1EF65CB6, - BE17B7279B4BF40E51C12F47, - E2D07ED5E1A4A460E0DEF59C, - 2EBDE3FF4894D72C310C9F84, - 1F2CFBF13ADCA05C0DC2D7D4, - C51E9973A6FAB635081B9FDC, - C818B558D6D5B62A80621281, - 32C0312A5D246D41AAD98A11 ); name = events; sourceTree = ""; }; - 2DB55F83F4310F0C4E4E03AA = { isa = PBXGroup; children = ( - 18EE6576A9ED098632CE5155, - EB182DC4124FEFFFC87D12C4, - 8B1C747E63EEF036AD9AF3D8, - ECA97019B42083AD879B5B97, - 1C3D15546065C1A9AA5AA0C6, - B2032A24364695450A5E6A76, - BA415BD77DF4B2F4760D1387, - B72C0FB8DDC0F1102DF42943, - 6930E651AEE97FD47E185EC9, - 96FD3A02BA915E460520A0B7, - E927E4A58A84B21AA6B38A44, - F2212B7F42E26C3DD86800F2, - 09AE2C7E2573204A7A35452B, - B394145555DCB9E0FAA5522C, - 9846D4523B3425BBB04107EE, - 455176F8EDBA7A9DCEAA1367, - F750738F398054AB38250780, - DFF08DC68372AEE17EAA9CC7 ); name = buttons; sourceTree = ""; }; - 17B11D96CDB313ED60D8CFE0 = { isa = PBXGroup; children = ( - A3CB18F915377AC3FFA2E5F4, - B28C2EBD0846A09DAEDDFF4E, - 04F48B09426293224576DA9A, - DF6B4E787E39CD446ED2EEEE, - C992FDA4396430392CFAD150, - 346CC505FAFEE9451040108D, - 3384A91143018ED9346E4118 ); name = "code_editor"; sourceTree = ""; }; - BCB2FFE7C2A4084A267F57F2 = { isa = PBXGroup; children = ( - ADC16C18C8237A7F8E35E37A, - D8EB3EA456D9FCC211CD1ED5, - 0D3FA24FF38399E0EDA80860, - CA3454A9B6F80A2F4735C37E, - 7330A9643F50DE8BEACDBB61, - C0CC0FA84A4F7AA76C1611CB, - 1BC6C010045A06BDB4C684F6, - 3FFCAECECC0D469A010F7AF1, - 71B6CE03D6DB07BB293C8206, - 1DB68310EA4D6180FF948AA0, - 3CE16163A43A6E67428385EE, - E698677EEC8E88CAFF542764, - 6BB68B37C7B0BB4DA8326647, - 1EA844F7CC5377A14B0FD21C, - 76E073B2A3F59A3ACD20CC87, - 8BA30F0AFF5EA0E1A0203ACB, - A4E66D702028A22D8157241C, - CB6BF5E15522D8A272032AE9, - 53EB02EEDF5E7971EAB9E795, - 82FEB35063C3559D2F46AA6F, - 37E48B8F8AD2BC448E5935C7, - A77096E86054F70AC0A3B69E, - 981BACFF7892B83828313D8E, - D317D4B5BA40A5754EE56F47, - 8400CA0D3C2AB7A60A7329FB, - BC209F6862D5923B8F9E3080, - B0D261D42091AAD1560A0D63 ); name = controls; sourceTree = ""; }; - 2FE3729520998304E4B05FBA = { isa = PBXGroup; children = ( - B60FE8BFA252E3EF2D60B77A, - 79ABAD7BB654030EF29B8B9C, - D3B56583D4F60069296DB959, - 3A4ABC7E24F155A8CAF027B3, - B1DEB4E0BBFE7E2D052165BD, - F9FEE6DAB2B2752AC13D7286, - 85F0A0454489E4AF1F80AC83, - 102BAE57AAA43A7685FCBD9A, - F631A108CB5015BFA2E25E00, - 730CAA344708954DE271072C, - 295793C7AA1A57DC4BBCBBC4, - D54308F25AEE3110A166F2BE, - 3AF50EADB5B2C973E0C8EE9F, - 9A9D8C524A070162517620E5, - CD6C610A843822A7FA53E9D7, - CA1B41922D8094982F967DBD, - E9E66775B2F13ACD0B751E69, - B689E250203DE38D6D4F39F9, - 29DFAA512171B967D687A945, - 0AB8288D92FDFA00F30FB8DE, - A418FC3BDDBF1CE9F2903490, - 0EAD906B617A1A17305CB9F4, - 949854EDE6B5B16CEFB6108F, - F39059E72B927A700010851B, - 8A67B45A2BA1D19D1AC43315, - ECDD0F8397F3EE4E7FA7ACCC ); name = filebrowser; sourceTree = ""; }; - 558A664D5D1ECEC607F4775D = { isa = PBXGroup; children = ( - 912C419859C9C56BC96AA6FB, - 717295136FD426125079F78C, - 5ABC6616473BA4791AA8101E, - F61C34EE417006881D0869F4, - 29A79478AE8567250972ED43, - FB080C47434A8FAB73B8F486, - 7F5A271EAB78C7CF8B2341DE, - 92EDE6EA48F94DC5A0BCB24A, - A00C6593BFBFA76043BC0C06, - 02982EB6A81020D3D421AED3, - F1A33029252D29A6ADF171B0, - 15C6FD019B274AA51B4E2D76, - B1E8FF009812F29C2620E6BB, - FAEEA3536AD17B2667A1BB94, - D64DD9F41E4598606855DFCF, - 7356F5E93CEA4D472D83D8E5 ); name = keyboard; sourceTree = ""; }; - D75AAB3AB61247E962C00692 = { isa = PBXGroup; children = ( - 921B616E2229AEB6390D2B57, - FE1072B5FB77E8FEE1BEBDFE, - 07191E1A9805FA6E6F253FF6, - 2EC173A08676F6E592A7B347, - 45E5EE9E0173683D721FABDA, - 2D3A362DD3833B9E70B10FD3, - F8FCCCE06D31FEF697FCD80D, - 44CDA79090B115C3B62A2168, - A6AD7357F905309D1B461EB7, - E9242E8425497D889C764C66, - FF046140CCF1EDB0DFF80178, - B6A223FB5B4A9388C83D6FC7, - A95F42C5CB0C2E5052B31568, - 600B2FDBBBE812784CB49A69, - A31221E2A50CCE9DF06B5F4B, - CB54AC3D311C44A1F3B463A5, - 3D8B0E86C98E2EE49AE868C8, - 238965266F88730956D776DB, - B116FEC4D544DB8E38CB571E, - 797C94BB7F42CBBAACCFFB87, - F1F65C9E7394E04E073A57A4, - F64E8284F142600B9F519B07, - 993C90B10202DA78FA31CC58, - 8C0FFF811E06D162050CAB14, - 079CFB5DEF6F2B71E2910A22, - D5F5282BE0F43A5E16824749, - 143F36BCDE7A65EBA33900ED, - 093E54DECB8191CA74D79176, - F2C653BA4552E6838DFA4F87, - C42D9251031A81B5CF2C843B, - D41423657626ACA672A9DED9, - 811149E18993F029165D330D ); name = layout; sourceTree = ""; }; - EAE72EDE682D52DF77747660 = { isa = PBXGroup; children = ( - FD004BDDCEDB7E324983F70C, - 7B991020107EC0D54965BCA2, - B92ACF027E63D1C788DEC893, - 3C739F61EE232C75546D4DCF ); name = lookandfeel; sourceTree = ""; }; - 870DE7235866DA3B81B683B8 = { isa = PBXGroup; children = ( - 218D7D73C086866E587FFD01, - BB93D3C283731C0B25B7AAAE, - 1DDE0A8E4C5857715D9B5FAE, - 502B3625329816EA6330465F, - 6AACD2FD239E39F87B666C6F, - A563BC883D801CF5956DC4BC ); name = menus; sourceTree = ""; }; - 4F37E36BA5E052B3BD4B87AD = { isa = PBXGroup; children = ( - 9E4B3BAB9BDB06B60D28DF48, - BCDD702ED33BADF3FC19384C, - 3D74B30C63465C32E26D8E33, - D4993649A93B73052C8045EF, - 31EE71EA61B4ED293481EB97, - A08313B5F112579D130373BF, - E1CA0B04EDE60771B81B9700, - 944BC51C440C167C5B2A23E3, - 136109B3076DDA7B2E01CF90, - 067D84F9291770240D1AB5B4, - 50C02B44D0CB18898F575B1E, - 441257DD380138C03568FCBD, - 07CF9AF337779EB486AC92BF, - 2886656DF7ACC9DDC888827F, - 0C28F27F9D1CE6CD65185760, - 89AA49DD2A63D80E90A56768 ); name = mouse; sourceTree = ""; }; - 362862B72D7FF7997C44CECF = { isa = PBXGroup; children = ( - 82DFF1BD3665DC32672FCCE8, - 5B6CD1833A98F9844B7E3FF4, - D39C0B853C3EBBBD11E7C71E, - 657546D70AB7B2709619E07A, - D31704DAB806B6AF3ED52DC7, - 574EC603B2B1189687851319, - 243EF1A31A779413BC2D5B98, - 72EFFDE39C7255D50F926944, - 36BB6DDF702EC9B3DAC851FF, - A3B6342C6207D452F6AD985C, - 9DA988F1D7CE29E0DFED7EF0, - C1A3232DDB617A20D9C26526, - 072D77C3834B1B3FB77F277B, - 749CA35420339A25BA4E500F ); name = positioning; sourceTree = ""; }; - 0F03F34FC3542EF0CF8B31E6 = { isa = PBXGroup; children = ( - 1C3FFBA02AE51EDD72A6250B, - B422688E380911F3C21E3F04, - C45E7E6B6E45DEFBF80940DD, - C1F662CED371C843E4EE03B2, - ECCBF2452804ECB2D5B4BC50, - C6B318D6930A05FF86AD97DA, - E2C948680009D1744CEDBC25, - 5B9E9460EAA932889DDC4873, - 0984A4BA00D6AAFB463657F4, - 02685CE4575D6E9B8CCC7738, - 3451124EC2809C9BB591DF93, - B568DEC2B352281BC63B33CD, - 84311C1F5A8ACC8DF4D6FF34, - 3641ABC17D67038746897FA7 ); name = properties; sourceTree = ""; }; - 5C03BF1C4CF3DEE1E0D6A3A1 = { isa = PBXGroup; children = ( - E748C93240CDD61473B0107F, - DED871B1C7458B15DE7C9234, - 26E787FFC68224BF8EB5A458, - 11F1658A055C45FE824FD2DB, - 4DFF179AFD87D34C7E23B1E5, - 4C3C3AFC3D97C1378B7D7435, - C25DFA2F2B673EB0146412BB, - 0A20E7E561633610A76A34AB, - CD9F817B7EF0DA080668A3A8, - 4BF7A01BCE61A5068CA13D8F, - 9C1D5CDA61FB51F657DA8B22, - 7DB8CFB77EA690ACF54C63B4, - 3C8C1AAF32DFECB89EB83271, - 127FC743FE67E6EEF2531BD5, - 4387C6496C7079FB0032B99D, - 1317F0BE5EC80371F744967B, - 826CC87E9E280F46B6D62B64, - A34C0E63D41CFF5E55FD1D9E, - 6BE989C709D2D1D017548447, - 529CB909220344AD55944372, - A9DB12F944D9DC336AD0A78B, - CC04F253CB70B20B774801A9, - D9847FECA6801E9A61007D50, - 740D1808DB934123F05A1598 ); name = special; sourceTree = ""; }; - 48D41BA310DED74E900A5AB0 = { isa = PBXGroup; children = ( - A5AAF4475138358F33D4904A, - 72C4FDDDB8602591DD4F7B3B, - 8AEF18EE9B12D4677F96B709, - 8F54431CD3A672B1EB8335BE, - 2FFDC7636EFC2D7F74590A31, - 12C66C90F3192AFFD6BCEDB6, - 929FEA5458430B7AE23BBB46, - C286C779DD52C29F86E3DBE9, - 090907E4FE95EE2B11C1A0E1, - 6E522DF13EC47755234A5D57, - 3FC6FC331B4E104D1DC223D6, - 2E4A5F7128313C23AD0356F7, - 207CDD87107EAC8ED17DD601, - 87E57C8F3448D615271CD9F6, - 7C06FF93D655B9987000ECA9, - D7772BC5E4E455AE2916A87D, - 2FC449D291A603E26E938F52, - 6C33842C52B61407CACCA858, - 6165F485E931EF9F69D2145F, - A24990B395323FBAC0BEFB5A, - C7C882D550E3B72FA5EFA88A ); name = windows; sourceTree = ""; }; - 92D807F41C69EA70B3D78B08 = { isa = PBXGroup; children = ( - D0D9267E200BD462361810F7, - 17A21B31FD41D00A4088FADF, - E13F33E386E1A0D5FC546521, - A0D6308567AAA50D1163D9D3, - 621B3A4B154182F69DDE2989, - A1F58C1A972425C2B43DD1B3, - 2FFF9AFE4BD9437CE096E52B, - 41C8C324F13ADA3423FC3B0F, - 2DB55F83F4310F0C4E4E03AA, - 17B11D96CDB313ED60D8CFE0, - BCB2FFE7C2A4084A267F57F2, - 2FE3729520998304E4B05FBA, - 558A664D5D1ECEC607F4775D, - D75AAB3AB61247E962C00692, - EAE72EDE682D52DF77747660, - 870DE7235866DA3B81B683B8, - 4F37E36BA5E052B3BD4B87AD, - 362862B72D7FF7997C44CECF, - 0F03F34FC3542EF0CF8B31E6, - 5C03BF1C4CF3DEE1E0D6A3A1, - 48D41BA310DED74E900A5AB0 ); name = components; sourceTree = ""; }; - 4FB94A8F4982BFC449BCDF15 = { isa = PBXGroup; children = ( - EF18D0073BE50E572ADD9A1C, - 8F6F9E1FD31E1A6268CFD3F9, - D36EFC4421056277BA87387E, - 3AE0BD116486BCE37F0D994C, - 41AF663E626B8F6D319B9966, - C913994AAA448C9F22ACF100, - 112017AA0A061CF080DBD504 ); name = colour; sourceTree = ""; }; - 5C291A35207CB6C58F653E05 = { isa = PBXGroup; children = ( - 3EC800323255128D69539BAE, - BD52C1CCEAF6FEC311B9FDA1, - B7251E779500BA77F5522CC7, - 1F0DB4B2825AF638183B50D6, - EF50EEDCAB08F842AB8DE6DA, - 6320F9BAFA094B5C0C828C58, - 2E03ADF975A126C1F2F7B667, - 36268DD78D00323D391ECAAB, - D6B4FED1F1D9FB82C6424438, - ED3ED8389001D55FBDCF1087, - 5792CC17E9DFB966371CBEE1, - 835CC2A1E67E7B19E41F8FBD, - A7A8BE6B30C70701A10B5BD5, - FF052647D2EFA985D05C8E83, - 2B90FAFBC65FB79A5D74E816 ); name = contexts; sourceTree = ""; }; - 097AEBBD16544F0BEEE32245 = { isa = PBXGroup; children = ( - 504730C9B9F60192C2577979, - B6A249ADEC5400011AA671D9, - 85B7BCACB40E02815844F71D, - 00B5FB5ABF4F13EC5D28E34D, - A54BC72C899A2AF82E1E37F8, - 849E645981CA10B8D5576462, - 582DCC2F948F1DEA0D450B0D, - 17EBDF689C731DA257B243C9, - E0694CD7C814AA99E5A84799, - 0FA9E378EBD7EE63EF72124F, - 62967D33232C5A86D88084B4, - 2FBD6F49349E7CC8FC2051EA, - C17613C202D8E1C366F21D3C, - 1FA43B2E4244CD74B551DAD6, - 2BFC199D03DEEC329D6A7CB1 ); name = drawables; sourceTree = ""; }; - 6D6492A7E3B70A5E76AFB49B = { isa = PBXGroup; children = ( - 32EA297812F1C88B42099501, - 85D4043F9E25047E07496DAC, - CB649686575473223C859482, - FD1FA4ABB4226372235643E4, - 18DB9BD10F140F132A3279C3 ); name = effects; sourceTree = ""; }; - 58FE42C578BFFD1F8F545B39 = { isa = PBXGroup; children = ( - BA17B023595ECD8166A231D1, - 6B4E90767D784246EC4E1944, - 78068AA59A5DCFCCAAEA79D0, - 0401EA0E883CCAAAC6960A27, - 61D06B694603F608CDA0703B, - 8117D400F45F1DF157634824, - 91CB423DBC5F3CBEDD9CF2EF, - 4284BA7A26C7F6DEB00B4366, - AF66A9951377E2D04C54CADD, - 932024E0F2A2CC22B7657691 ); name = fonts; sourceTree = ""; }; - BF4679D9201C5AAE6751536B = { isa = PBXGroup; children = ( - 2ED8CC539A9D9BE611F67A9A, - 5CD42FFF9F1A509D117BD0CB, - C18F342C087F69D141B3FAF5, - 4011751B9EFCA7B9345D7D7C, - 29BC53FEE9BC27F44534C909, - 795E2BD2D39A3A6E36C26CBF, - 312F208B501E0D7764C6B613, - ADB84942A96B6B9A0F5D7590, - 9D3F1BAB1D48DDECB9F35916, - C2700BB57B9EED7BFE975564, - 132E3C38B4F0C6229EDF7000, - F8C44FF03700F6140950F373, - 1B170F70AF8AA0A39074F671, - 8B7D7435287A20CB2D8E3704 ); name = geometry; sourceTree = ""; }; - D71FD838B3FD1536FCA839A4 = { isa = PBXGroup; children = ( - 0F1C5770B363EF7DF64A876A, - 6619D27E74F623B1E8CE8F71, - EAF0F2EAB230F7539B91A7FB ); name = "image_file_formats"; sourceTree = ""; }; - 36A6F90D0C87EA1D8FBE9EC0 = { isa = PBXGroup; children = ( - D71FD838B3FD1536FCA839A4, - 0337723C9D607B82CF8AA682, - 7904C2A3C52959748C46D54F, - D1BBA8F348C6DA2852A68221, - 94D3EBE6E0D9AFE555226A88, - 16CAB09D19F1A7379506310A, - 67F4F9E1F6B9B4D1C1A668E5, - 35A9146C03FC33B577817E9E, - 6E4DF7338364956EF42C4493, - BC2326E1A85025E700B1DE3D ); name = imaging; sourceTree = ""; }; - 1BC496671A99D62A223BB364 = { isa = PBXGroup; children = ( - 4FB94A8F4982BFC449BCDF15, - 5C291A35207CB6C58F653E05, - 097AEBBD16544F0BEEE32245, - 6D6492A7E3B70A5E76AFB49B, - 58FE42C578BFFD1F8F545B39, - BF4679D9201C5AAE6751536B, - 36A6F90D0C87EA1D8FBE9EC0 ); name = graphics; sourceTree = ""; }; - A11081920ACF526B1320CA42 = { isa = PBXGroup; children = ( - 92D807F41C69EA70B3D78B08, - 1BC496671A99D62A223BB364 ); name = gui; sourceTree = ""; }; - 3C4DE044AE46D5AE2388C827 = { isa = PBXGroup; children = ( - 3FD3FA96955DD648494E76A4, - 974C3A59CC78DB4302B3552A, - 692A95B19D9C32094A1E07B9, - DC51AF61DC4B345E5E4153E3, - 058702E8697667AEA38254C1, - 090490A1C3B0002DFAD78C7B, - 6FFB38088C11BAE68368A3E7, - 4EEF0B0BB4C3D1956B04122B, - 59B2FFF817679AEA84375E1B, - 49BF2B02A6D7B4438FC24839, - 00B348FA35A7F691AEF84FBA, - D9B3C04F8EB4228DD59002E7, - 42DA88264F768BAACD0414A3, - 17C3AF03FF7AE88AE0C73311, - 75D6F1C676E178DEA8B86849, - 4035C867821E9B5887AA25FB, - 4D005659935C7DE99C2C01E2 ); name = files; sourceTree = ""; }; - 13FBF71BD76A08C8971C6351 = { isa = PBXGroup; children = ( - EFA58F646B69B227AEF14140, - 7241B187AA9B0217838B6052, - 06B06C420341B005DFF951D2, - 286206E754AC14DEAF88FD43, - AD7A1C2C82EE714EBDD52EFC, - 21215569A0DCB6ACADD32401 ); name = network; sourceTree = ""; }; - 177636E4EEEBBB139F934897 = { isa = PBXGroup; children = ( - D4211E697F43821CDBCE4F24, - 7D593A29CAB138BD9AE950BA, - BE5DCD603F7E21A1F66CDF33, - 304FD4FD5771F00C8EA46C10, - AE363A1FE2F403F7CE2FDF7F, - 770082A38CF6071E5CFA563D, - A10A63E2098A85B5CA9265B1, - 8932FA0AA37E1E04CBA55B23, - AC183DCFAF18C9CEB88EEB1E, - 3F60563DEC7941B88163A50E, - BB059F528EC362F86E4B4278, - 39C0783ED515AAA82F9CA37F, - BD4388D88F2F02195AC73AD1, - B3F5E7A708350F72E7C77153, - DFE9A08C4AC8E1809018B5F4, - BBE79494A818EF83F52A4C7B, - 5F27172FD963C1A748AA625A, - AE5A7EC70F288E7EA682081D, - 6F7CA1B3AD09C76271FED3D6 ); name = streams; sourceTree = ""; }; - 0C54591C1E8594B59F4701FE = { isa = PBXGroup; children = ( - 3C4DE044AE46D5AE2388C827, - 13FBF71BD76A08C8971C6351, - 177636E4EEEBBB139F934897 ); name = io; sourceTree = ""; }; - F5A63AD86C7C0A9A2C33D74D = { isa = PBXGroup; children = ( - 7A039686F4F852E26936CA53, - 161894D0D279595D88F470A6, - 868E43A4BB7015579789E4F8, - 8E0874D93125C2DC34255EDB, - 7C2A4084A267F57F2E27F3F7, - D99C977ACCD09262F06F6624, - A978BD4031CAE24FB0FE26E1, - 1A656E62C071C54D28343AC2 ); name = maths; sourceTree = ""; }; - 9518033FC989E104DDB02E8A = { isa = PBXGroup; children = ( - 252632F3F97DF57C0781BEAD, - 8FB80383DF3BAD7227DF465A, - FE76B46873DE20DFDC5A94BE, - 28C4C81039B42A399F5B7320, - 341631A7E86BF1C0E49093C6, - AD655AA04981173716022D8D, - F1D085B5F12E814BF1D5C395, - 58654C2630387C4A336A5BFB, - 524A70C9F23954F8F2A3F99B, - E05812E3CC31875A202D6B30, - 224C989BF83B6EA867814BFF ); name = memory; sourceTree = ""; }; - DDB94A7300C3D1F2E9E51C47 = { isa = PBXGroup; children = ( - 213F0A7BF38AF6AB34414A45, - 21B2342B75097AB93CFF7E97, - 2C48BB1A286C6A63174E5798 ); name = common; sourceTree = ""; }; - 1004A23965A4DB0FCC441ED3 = { isa = PBXGroup; children = ( - 7A51D8B81F390A4CABF25C73, - 76DB94CC776536F5D05B9445, - AA698DD5A82F91CF84A29666, - FABA493FEE07E6373DD8EB41, - 595EBA8A689DA899986314D8, - EACFC12E665283EB7926E9EC, - BAE5CE629DF9D286293E616F, - D4C499CB25F043FE667BC5E1, - 4366712140FBEBEDBCBDCE9B, - E0A2C24581917DD090186333, - E61B485B10F8D4A3986953CD, - 3F3D429025A92B6F0FB6F8EF, - 275F2210628D9E9968B1B258, - 5DEA687D261C59CBABB782E9, - 5593DEC14D551C38CCB50D70, - B8E47498C7C6D5ECF41F0EAB, - 9DC2C10B16A645EEB82220D8 ); name = linux; sourceTree = ""; }; - 13513EE40AD6BAB30E26C88B = { isa = PBXGroup; children = ( - EE5F18DF1DED7617C4A41FF3, - B2BCE9DDC8F0F54CA3D913E7, - 5249EFBE3B22E6FC1A7B6D42, - A257B76FCE9D594EAD41414C, - 8280AA34B23B4D366711A9E7, - C9561A66310DAD5EEB4A9462, - B62991F8AEE7327BA8A5070F, - 013F753639A6350C8DC602AD, - 6B46AB1931E43DAFB278D23D, - 72524FE185FF48DC1F954341, - BF5307F364AC9250D8625168, - AA4823F2F2A78C43D7A039D0, - 87A5A064CC3CD55BA5D7617D, - 641638A0466CEC1BDEAFB476, - 7DB37383434F45D8A7B674C3, - CB16B2438EDCC10C499645E6, - BEB35C6173793C1CB7AB6311, - BA58B49B820A47F6F55CDACB, - 930E58E13FC92BF70AC20EEF, - 2F1812B26076D9CC1495D452, - 9113CDD122D2790E147A8CF5, - EE56999A85AF18015C540183, - 189F69E0B926C73B654D6951, - B9E16F4636FF8C0A1FC8BEFB, - AE9A7A0775FA806126A74E16, - 4F5D1AA83981FBCD33CE234F, - E6A7BFB0FCD17A9B133CDFA4, - FE6E3F911679B0D7547577A3, - 8BCE60CBC91DBAAB089958A1, - 3F11593DC3A168A52FCC2DD9, - FC2C82760E717788B5A6E691, - AB0F3F5A622CBB251F64945A, - AD495FA1991295C722B46843 ); name = mac; sourceTree = ""; }; - 64DE2D4534D79E74C40A0DEE = { isa = PBXGroup; children = ( - 42059626955C547DA6AD3196, - 8F383A785B4876198C5B0194, - F3B50EE3939E9F16D13C3C7C, - 9C4D1018ECC0BA07346453EF, - 3A37CD82212075940421CE4F, - B296F736C0CD6AC15BE6424B, - 7F3EF672D07ECE3E13AAF267, - 249959E338D7750E56A9F2F8, - 58B70C726D186B4E770300BC, - DCD09B6EF4A4A109DE01F152, - 7527A5E8F4F39581159D3E5B, - 1DBF9DAAD0690CB2CA4E9960, - E9B203E963EB1AB566061AC1, - BA561E64C6400CFB1DE013F6, - 061B492EABD6B1C995D581A8, - 50159A5B7A552A6C1EB557F3, - E7625D7A06CBC11F40A56A70, - CDA5FCC51F6C1E84D7DC3274, - B14735381ADB00741166E330, - 09AE0882D58BE1715219556A, - 0EB41C0AB478EE02D8C851F9, - FBE07C5CC622A5D36BDAB9E1, - B07C853EB60D8D8691BC1B4B, - 5D32C8856093B33438AEB758, - 8758E6857070D7E5406FDE3F, - 8E8BE2F1C182E418BBA6903C ); name = windows; sourceTree = ""; }; - FBE56423C0482E49EF317C85 = { isa = PBXGroup; children = ( - 03B9D3D9042E85BDD691325E, - 13C661B79E1E9508512A6B21, - F2F68E50F42BD0F124E89E2C, - 59C46E289F86C80D4341EAA3, - FA82460758BDCB2DCCE1EAAA, - CE06EEED7426AA45C27B629C, - F439E6C4B2D2AF19645252C0, - 1D74C9567283836ECC70E48B, - 40216CE846A54CE706131A23, - E646726910F110DC34DD1662, - 9AF9F1C0D766D4F894E4A7B0, - 902C32F471DA6C435E80372B, - A404CD721E2A0F0CAE9326C5, - 32B7C3609BDA01AA09740139, - CEF7210E311274F1DFAB6882, - 755C440534C0EB494572B3F3, - EE855319AF344A05C92580C7, - FCD02A40985242A8A6648311 ); name = android; sourceTree = ""; }; - B3E58752D519C56B78A95ACE = { isa = PBXGroup; children = ( - DDB94A7300C3D1F2E9E51C47, - 1004A23965A4DB0FCC441ED3, - 13513EE40AD6BAB30E26C88B, - 64DE2D4534D79E74C40A0DEE, - FBE56423C0482E49EF317C85 ); name = native; sourceTree = ""; }; - C6B52BCD0CB1B809D6DE555A = { isa = PBXGroup; children = ( - 76E2084D2148068F9138A816, - 33F16EE4F38C9B76E7FAEF78, - 72F5ED2E8B945988C37EA9CF, - 663746215E9BA6C761172B85, - C3FD9D93626F80A45F9B6DDE, - 4007410FACA2F865FD8EF769, - 8273A206FB309671284959DD, - BF888BC540B64D5C61E46A34, - 644FD6155385BC3AA270FB5D, - CB092FB152F43900272F8E43, - 4A97C8D2FF6454DDD3AF4BE5, - 2AA21CDC91EA122266EBD780, - 35DA3E75DDB03BB35794289B, - B507B4A8712A54D7A8C03223, - 1EE2A763E06AF4951024950F, - 23252E4C97AEFAE0C5EEAA77, - D4FED84C92ADC4B2C41A4275, - 81B36E7C56DF1A777AA04F71, - E5458BE2F33DBBF5AF834BB6, - 0EC7DE81A516F4130AC59557, - C972C24A7D2FC817362E1FD7, - 5715BC14D93D61D71206FCB2, - B4575FEE10C67D45C9532540, - 95F21C2733BD5932372E4157, - 4EF8C44FF03700F6140950F3 ); name = text; sourceTree = ""; }; - 723AC5B999F1EC8F4A101AAF = { isa = PBXGroup; children = ( - 40282E23D43D86D122CA5C54, - EC240B4379FB70C8A8AC2855, - 5508D42FCF7A1C8A8CD78BF0, - 90E4999A78655A238AF42BC0, - 8E78623B2D21CFE68DEC0483, - 9E622C38E4BD511B6ABBF7AA, - 6734838B47EF0D9ACEE571CD, - F00BDEF5CE2B281CBE2E89A2, - C5F20B02D7843F3C5ABEDFD4, - 1FD1C9A3D2DB64C825FDAC8B, - 4D60F7F748CF6702D1E45960, - EFE26D4E1E2B92828DBA3A99, - EF06213027EA3F7C54EE0F18, - C25E5F90524645D684C674CB, - 60F21CB42270ACE2241544A8, - ED84C92ADC4B2C41A4275F92, - 3268C8DBAB23CF503BF30935 ); name = threads; sourceTree = ""; }; - 281D6856FAC3B07634AD1C32 = { isa = PBXGroup; children = ( - B4435D42216365FA97651272, - CE216F2485CD5EFEA91554F5, - 599F5C47BB9B5898E0E88CF3, - 9620E4769876FC01ECE885D1, - 4BE2727CCD2CD7603402C8FE, - 7FDACEA80794451691A12703, - A618FC3255ECE14EC9259E6B, - A2D6317BEEC77A62E8F834AF, - 7F1AC20BE8A18CA6BB7403EC, - FA833EFA9E93C7DBE6624676, - EECE464606AE845BFC4B941B, - A59A5DCFCCAAEA79D03C2B27, - 3C9E6597968358B57374502C, - ADE5F12AA5AD969E2C7002B3, - 75700D13513346310CEAC30D, - AAC585C4648559DD713F28FE ); name = utilities; sourceTree = ""; }; - 992526B83B6AA618A4FAECEB = { isa = PBXGroup; children = ( - D443FD24B52106986FC8A531, - F2B0E44A08E127FD31184241, - 1CC2889DB696E12FC34E3F50, - 1AF37A533ABDD889670F9349, - 2B74AFA66B37B748487152F4, - 89F308FD85F378E278C98884, - A11081920ACF526B1320CA42, - 0C54591C1E8594B59F4701FE, - F5A63AD86C7C0A9A2C33D74D, - 9518033FC989E104DDB02E8A, - B3E58752D519C56B78A95ACE, - C6B52BCD0CB1B809D6DE555A, - 723AC5B999F1EC8F4A101AAF, - 281D6856FAC3B07634AD1C32, - 2FD5C998952BE08F8ED3F262, - 01778F26212AECCBF2452804 ); name = Juce; sourceTree = ""; }; - 1076A9F8D71BFFF9E9975FB6 = { isa = PBXGroup; children = ( ); name = Resources; sourceTree = ""; }; - 23256FCDBD84A2E259E40908 = { isa = PBXGroup; children = ( ); name = Frameworks; sourceTree = ""; }; - 3E3A3D491CB40D2943E95E64 = { isa = PBXGroup; children = ( - 389351359BA78C682E1931A6 ); name = Products; sourceTree = ""; }; - 25F381A264FFB3735F124DCC = { isa = PBXGroup; children = ( - 992526B83B6AA618A4FAECEB, - 1076A9F8D71BFFF9E9975FB6, - 23256FCDBD84A2E259E40908, - 3E3A3D491CB40D2943E95E64 ); name = Source; sourceTree = ""; }; - 0344046290267DB74DECDC05 = { isa = XCBuildConfiguration; buildSettings = { - PREBINDING = NO; - HEADER_SEARCH_PATHS = " $(inherited)"; - GCC_OPTIMIZATION_LEVEL = 0; - INFOPLIST_FILE = Info.plist; - DSTROOT = ../../bin; - SYMROOT = ../../bin; - CONFIGURATION_BUILD_DIR = "$(BUILD_DIR)"; - DEPLOYMENT_LOCATION = YES; - ONLY_ACTIVE_ARCH = YES; - COPY_PHASE_STRIP = NO; - GCC_DYNAMIC_NO_PIC = NO; - GCC_ENABLE_FIX_AND_CONTINUE = NO; - GCC_PREPROCESSOR_DEFINITIONS = ( - "_DEBUG=1", - "DEBUG=1", - "JUCE_ObjCExtraSuffix=JSlRKlNBb5", - "JUCER_XCODE_IPHONE_5BC26AE3=1"); }; name = Debug; }; - 9DE19CD5BB8E12A153385ADD = { isa = XCBuildConfiguration; buildSettings = { - PREBINDING = NO; - HEADER_SEARCH_PATHS = " $(inherited)"; - GCC_OPTIMIZATION_LEVEL = s; - INFOPLIST_FILE = Info.plist; - DSTROOT = ../../bin; - SYMROOT = ../../bin; - CONFIGURATION_BUILD_DIR = "$(BUILD_DIR)"; - DEPLOYMENT_LOCATION = YES; - GCC_GENERATE_DEBUGGING_SYMBOLS = NO; - GCC_SYMBOLS_PRIVATE_EXTERN = YES; - GCC_PREPROCESSOR_DEFINITIONS = ( - "_NDEBUG=1", - "NDEBUG=1", - "JUCE_ObjCExtraSuffix=JSlRKlNBb5", - "JUCER_XCODE_IPHONE_5BC26AE3=1"); }; name = Release; }; - 8E935B9E7F2982A06CD7EF99 = { isa = XCBuildConfiguration; buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - GCC_C_LANGUAGE_STANDARD = c99; - GCC_WARN_ABOUT_RETURN_TYPE = YES; - GCC_WARN_CHECK_SWITCH_STATEMENTS = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - GCC_WARN_MISSING_PARENTHESES = YES; - GCC_WARN_NON_VIRTUAL_DESTRUCTOR = YES; - GCC_WARN_TYPECHECK_CALLS_TO_PRINTF = YES; - WARNING_CFLAGS = -Wreorder; - GCC_MODEL_TUNING = G5; - GCC_INLINES_ARE_PRIVATE_EXTERN = NO; - GCC_SYMBOLS_PRIVATE_EXTERN = NO; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - SDKROOT = iphoneos; - TARGETED_DEVICE_FAMILY = "1,2"; - ZERO_LINK = NO; - DEBUG_INFORMATION_FORMAT = "dwarf"; - PRODUCT_NAME = "jucedebug"; }; name = Debug; }; - 71190EFA58D0942581B5F1AD = { isa = XCBuildConfiguration; buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - GCC_C_LANGUAGE_STANDARD = c99; - GCC_WARN_ABOUT_RETURN_TYPE = YES; - GCC_WARN_CHECK_SWITCH_STATEMENTS = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - GCC_WARN_MISSING_PARENTHESES = YES; - GCC_WARN_NON_VIRTUAL_DESTRUCTOR = YES; - GCC_WARN_TYPECHECK_CALLS_TO_PRINTF = YES; - WARNING_CFLAGS = -Wreorder; - GCC_MODEL_TUNING = G5; - GCC_INLINES_ARE_PRIVATE_EXTERN = NO; - GCC_SYMBOLS_PRIVATE_EXTERN = NO; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - SDKROOT = iphoneos; - TARGETED_DEVICE_FAMILY = "1,2"; - ZERO_LINK = NO; - DEBUG_INFORMATION_FORMAT = "dwarf"; - PRODUCT_NAME = "juce"; }; name = Release; }; - 3A1CB6B5ECF4A79CDE35CC66 = { isa = XCConfigurationList; buildConfigurations = ( - 8E935B9E7F2982A06CD7EF99, - 71190EFA58D0942581B5F1AD ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Debug; }; - D14EC3F0DC5861E37D35E15A = { isa = XCConfigurationList; buildConfigurations = ( - 0344046290267DB74DECDC05, - 9DE19CD5BB8E12A153385ADD ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Debug; }; - 8914D147048B9EE245989ACB = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 0F4BA87762766B98D5B58AD0, - 50933337E6C3CC5B82540F8B, - 04CB2DA89A71A183CEFEB7C0, - CD59C8E60146B04575CD61E6, - 76890501626BFFF310A94F15, - 46151070FA7D3426EC35280F, - 983FCD60625A60993546F850, - 416D6F00E88DC74879B4DF2B, - 9C709BC2F4F0EE60BF52FACA, - 992F46189ABF711A047186A4, - 5C312E6678456C8293633E0F, - FB21B7E6A7CE55D3C0E3C37E, - C1147D03F1F4D697CC30DD22, - C5CFF5508299C26380465290, - 0ACCAC5ABDE686B0CA42BFED, - 2171BD82DA3A6744260CDE58, - 3C22C15ACEEF0454171D231B, - 6D421F7B7EE3A149389653C2, - 4ED0A649C320BA53718501CE, - 5D3EC9BA6BA37694CB371ABB, - 4CF5FB501CB800D4485B08DB, - 3747D91BE3C6A2E641BB133D, - 4CFEE72495007A62F78C1B8E, - BF7E18A49525915A0E1928C5, - 6DC6DEEE8A1A6092830A79C8, - 2862E190ECA33D2CE1458B51, - 0791EB173E6A9F959E692AA2, - 3B64EF7F57EAC5C51460059D, - 16D537EB6D3BFAB3AAB54B11, - 0C22446F12486AD139A640CB, - 95CF50482DC7139FCB40EB1C, - D66B0BC466522CD4C5F1335B, - F20E960CAA933102A0F0225C, - 9CDC242CC037F1D00BFD6157, - FB0C4D926F00644C6435F0B4, - 3AA8CE85F8CEA9D4B8063E52, - DDD4E27CA174F32412F71093, - DC89A29962945F69CE38658B, - 78E7EF1759BA0AACCCE37533, - 573BF08B2CACCC317F3D7603, - 8376B6E3DB141DDF5EFF6327, - B579C891B16F4B219CD751B5, - 43FA6F0FD4DDEBA6427E730D, - BAB3164372A6C31A1A7DA58F, - D71FEEEA440682B04E024BB7, - B331EE2C23176373F2D52C1E, - 79D8E372BA77018BDA956D92, - 3688819F98EFF0AABDD79029, - 84F9FCAE9DF003DC6FC3C941, - E1046147432EB115A68D6C43, - 5CEE2D7E55DA99C1D310CDC2, - B154245927BCB4F87ABEAF17, - 52ADF1419B058963EE32B7C3, - 31D36C32211754E793B9FF81, - 2D46CF2B0350A442E08EC355, - D1407BB28C169F5E1CAC3CC7, - 07E6E11A658930554FF0C56A, - E8DFABC1603D55B97429A8E4, - 1F905F44E5FA23A2D5CCDA0A, - 4AB5E55BDF79028F82F83D8E, - 9D2D1BA65C27BDA1F7C44769, - 43B3119E2F1B559263AE956C, - 4A7952C0A4EEE13296EEED5E, - A230949FF8848D5E923F9083, - 11162E9812CFB0E738A7E2E6, - C682BEA7DB70FDC7C6BA2D6E, - 6A53DA58B55E2DE7241BF2C8, - 0FF71870483AC46D5B7AC5B0, - FA01B3EABA192AE041D4FE4D, - 43047D78351C2D7047F4F81E, - 5BF44F954E56B7C2DD15EAEA, - B14EB5F3829CA26DA906D5C0, - D75943C2812EA68CA74D9FDA, - 6DEA630BFFF638BBBC8FDC00, - 708060ED04ADF4E4FB8E2171, - 12E3CC31875A202D6B30F778, - CF51988743ED2CD823DFE0B5, - 4AAFC135B170CF02A40F0D51, - 659D9CD58B6914EB420E6AEC, - 55737E2F1817DE642AA7DA05, - 6D2C50B0A69855A7F8C062E7, - 70EE7A1273945B62B013DB43, - 9DF800566462E24A14246EAE, - 89F0DA39878F8A41E60B8C67, - 12E1174518BE1063E506CE5C, - EC0B67A801316FBA35A04356, - 86EDB250B9F5C8FF3045ADEB, - 8F7CC7DDA1E07A392CAD82A3, - 621B7B0B518E63E69122C13E, - 97982824572C18827047D92A, - 927E7250FCE62E838599DF83, - 9AE6891C35CE161CB1707B4B, - 06994A713C38F415C4E8A009, - 98F737B7459895BFCDC7965E, - 7033A0968B1C81A821CCC296, - 14E5A383C70731C60911E698, - 3A10CF09C41F8F55B7529E68, - 5482BFF6CAD3B6CDFB09FBA1, - FC3299637EACD8B5CBEC391F, - 5C245C1A77B96A1425323A1C, - 05DFD3AF416CA6FDDDDC4C74, - 78DEB64D3F38269C62EB1C7F, - DA5DA96B9D1A26342D9278B6, - CA49EF43B1478B146ADBBF62, - FE6F6A4946B7E4F6C9F44C4A, - 28254F1E6E686CF6F29AE56A, - 9EA7FEF4CAD2BF46DD3596DA, - D1400B3D9D07FA9E8BAA21CB, - 716823F3B5437A20FCADA50E, - 7CAB8DEBF6B93C845AEF11E5, - BBE24BE654237ACD381A97E4, - 6F38AFBC749040844076FD4F, - B35BFCD19569A9F91A3CCCF5, - 7C7B33BC2E2F245C8AFC9879, - 110285CA29B28DDC018D2BF0, - ECF05C68A4DF71A10F8E8BA4, - 50CE14D31986BA1BC81B0869, - E421EC41CB492F58BF1D9C4E, - E3CDB77EF18430879925E6A3, - 55E5B76FB1649B60DBE16B89, - 6D1A45ED50BAFAE4F4E403AC, - 70D519927F38B21BE572201A, - E4EFC5F8828526CE4518F1E6, - 835F7FDCAD027B4E96AB407C, - D027C0131892DA25CE716DDE, - A65EBA33900ED91BE522DBF7, - 0D91D36C2195315FE534F304, - A1E82F70796B8611D7323247, - BC1856E0B20406DDCE5EBF94, - FF3A28F88174E10CB478931E, - C39AE37828718E9A45589A24, - 4400B0595B35F919291C1A01, - BB1DAC0CA8D7B3DEEDEE76C6, - 56F347211337C9229BA06AA7, - 75EAEC54BA3A8BD7F317C7E4, - 5FFFA4B8857D64FE36B4B125, - 1D406F33F6B9FE7F92A71438, - 806FF2617B7CC21609927A11, - 9AA76460DA7D34CE6A69E2B1, - 4E81BC4A50CF1883F529E152, - 8FBB6BF0C5406E1BA481CFEF, - F5F3F25D9F377128DC74D95B, - C64A2BF05224582134872415, - 0A9C9486A6B31F21B1472D2B, - ED9F9A6CB4F8BB7FEA5384B7, - DE0BAD16BD5A6568EB4D228B, - AF6FEC311B9FDA112CEEBE03, - 3795ECCE9D98F872F5BCAE64, - 723CFE5184B20B12ECABEB41, - DB6098F004F6D7F19605002E, - 757AC60B8BA481E592FFE6FF, - FC659F15D298558D9553B643, - C090ACD462D9431C8B64CAD1, - D894FBF1CF62C5F126213616, - 3D80F7AE3D65EE0BB607F252, - 2F33C392A0DD205A865955DE, - 36615B7CB2BE96B624C4ADC0, - 4F2AAD8318402F8C23A9EA54, - E6971F06B78AE76C35E1A19C, - 6629D535AE1ABE35A0D53C69, - DD4599D0A8117B025B477DE1, - E064E329741F36C329989203, - 61E659ADBF9D832ED8F24540, - 9379C833B875207E5DFC5A3F, - F1A6C2E3226F87860BFC4EBC, - 144872E56AED1981C0973B24, - 95648DF5676EBEF57009D09A, - 2FE59D80851A0A392EF2F923, - 621D2E6CDA267030405166C2, - 90347B7C32ACE8A11FC1B708, - FAC87D81FE5168E37645A113, - E5BB4B5EBFE206E09D0E6E10, - 1906C642BF6CA67821512855, - 6F41A81F269BCBB912C6AFBC, - 7BB45CEB3B0913F98FC817F5, - F41D6061AD873C619D7436FB, - 1FC0972EFBE39C7CDEB73A3D, - E63E64BFF5FDCEF5B53AE304, - E162F83B5F038092E2C70FC0, - 710BF477DE534CF18BD68959, - E5DA150E966B948C4CB4EFDB, - E96B477EB51FC152AC2EA6BD, - CF36EF39EEAB7A4744C5D310, - 372B6FF28C49018F5191C517, - D9AAB4AE220010CD526C87D2, - C732ADB05901619B14F1D6BB, - 075D5995E41FDD670ED35E17, - BBE02E8719411C8A7D43A401, - 35E3B9684ED968BAC0BC8021, - 736AC4A9DA6515B92644FA02, - DFFBADCBC9C7E31B391BA560, - A24A946371D566E02BCC95A5, - D390CCB01BD9BD132F04E0A6, - 26E2FB6533B5700FA9780E00, - AF5593DEC14D551C38CCB50D, - 0B830401EA0E883CCAAAC696, - 3897B36CC1D89C5755CE1B90, - C55B00378E784DE4B428E934, - 82A9E0388C9BF3A698DCEF69, - 7F6749BFCF2F134468825D45, - 277CF246D5EE48868E38E625, - 4D285D9D3F5955F2FD574D04, - 30F9B53BD00228406F6477DF, - 759633D5CDB35874FD37DD7F, - E0F309D93E9A7F0CC71C4503, - F246AADF8E531BC2244A1D38, - F78940DAEB8BE98A9AA4B0BE, - 00FE118356919D0BA97AE853, - 18D8A96CCD34E41A5E162AD5, - CEB8A9B9A37EBBA79A6478D4, - D6D48B2CC53FAE2BD126B0DE, - C384A89F786FDE8426F657D5, - 3D324F656EEF8F1FB2B437AC, - 645AF66C048A4815F5A8ECDD, - 38EFE824E76B3BB99824C265, - E23C5C51305DC7CE30E4DAB7, - 60E1742796432D042C59B9B3, - B92F53BABB6A9AC8348B001E, - EBC3AA015D24C62FA0307F51, - 803FFCA3DAC0C004A80143B4, - F0556B3AD9D388177E26B90D, - 0558FFF11AED944C6B3E5FB5, - CF73FAC91E319C464F07C966, - B6D3EDA0F2E3516F3922F23F, - E7C9FAA5F8A4AEDAD8A8CC1D, - 084C9F2D4F78134CB1EFE676, - 4DAD08CD3A688747C9CA237B, - 60FE8BFA252E3EF2D60B77AD, - C592CC923C5495467EF05D48, - E12096E92D3D43DD7926E063, - F4567E6C9ABFB13FF24797DE, - 0B0996F97D926609C23E5F90, - FB5900FB9E071EDC2542B846, - EDE605169F0AF038FE5097B3, - D78C3DA6505CE8CC3F17C070, - B23EE989379EB2F075D6F587, - ED7C62DE10250FCC07CF17B2, - 1535D49C24E8A9FA5F6DCF6E, - BBCA4C01CEF1EDA75625D6DC, - 136FB9588C834E6F4A1EEBFB, - 274415D1C0AE9BF56FAAE791, - CBAD975785BD26A0DA9417B6, - 2A8F78D412AC7EC0C2998A1A, - 2DD969525DEF4AD408E9BB59, - 059B694C912BE81023D5240D, - 4387EB80C5795FACBE753A7F, - B2C41D39730EB3AC75D55949, - F045E8F977C00016F6EBB1B7, - B89FE5AB44DDEBCC050F8D7A, - 2EA320797BD7D2137F133681, - 1008A8A446B9BCADBB853056, - 0FB1AED6E5AB5CEA95E70950, - 103A3B11DFE35E9088ECE933, - DAC7AB8D9EA70D99A1C1287E, - B3D08D9E24CC369E4838E6FF, - 15932C8039A59B0431FBB93E, - 3BBC410C79D2F53D32ED7466, - 88A4D0443DFD6BA1A1B32AB9, - 06F1BEB9AB97F33305B8F816, - 6CB4FA2797FBEA5C4C342EED, - 150C16E65ADC7E3359C88510, - 9C547F4DC4FC50F9C3382ACE, - 5D1B2A14239B0351261D832E, - 0AFD6B2B694302A62C7C9DD1, - 3CE21931FC5A59ED7C23144B, - DB7E8E984F9BEF4C84B887B1, - 07645D91AFD4F8512ECD48ED, - D132232A4A404A7C08D10928, - 83B488D64AB9828CFFBC55A9, - 8305C5E01476E99FBB1A0315, - FF613B604C2333F4A4ACEDDA, - CECE3D66B19693E41850C30D, - DF419EBD05F13A0D2073D47A, - C9FB7884928BF0D6140AF881, - 5C9628DB3E0C0BA8809AE45D, - 724DA2BCA5ABC5772604C3B4, - 035B1F7B1505ABF24455690E, - 3C71EA297D7418FEBB52F9DD, - 7A86E411B55E15DA7AF1FE67, - BD86381924AE45021246ABA3, - 306AB64E97A05B800349E7E2, - E7A5418175B23C794421441C, - 51F5844EAE455D51BDB17228, - C99F35ABEC13F58C27C1D303, - 3D9B5EDBECAA680B0A067F5C, - 724B03672FC7862B671969BC, - 8B31099030792C554BD51211, - D04EEEC7EAE7C806E95ED41C, - 7EA440527972D6B7322EC307, - CB9FE1DA1AFE5FBA9FF06061, - 26454A5DB5BAFD7901F17DA7, - F41B46F970BA78762DCE67D1, - B7A8CF6F889840BED05C8C27, - 3EBF23F390FC0227260CF7CB, - 1906FDEEDAE61C88A59BC271, - F51142C2CF336FC4A4FAACC6, - 1021132FAC7870AC18C040DE, - 05C8FA821C64B69BFF8FAF2C, - 5E330E219B2D2944BCE95174, - 275FBC09BE58E708A73B88C1, - 6DA99BA218FB45568258841C, - 32F1C95EDEE7722797B8CEE8, - 029A0E8B44DC17211722677D, - 4B4E17467BC41E2166549998, - 9686F29C29D1C26E353DE68A, - 79B4C2F1C0CF592ACE8093C0, - 88A87D28B3809665F28DC16E, - 6BDBEFD97E643E5BB27637FF, - BC3C22F5350ED7433D303A04, - 0B41EC4D7839F8CBCB8F9A0D, - B420CD4B589C08EAFA6E3DA4, - D4A05D7CA67B6F0527C9BD81, - 0D7547577A31512EDCEDC42C, - E2FDC7D3E3DC4C1423FA0C5B, - A46B0025A68136ED993E0D85, - B99678E919BF547A3A3F5D6E, - 5B714CDD0082419BFED7D2D4, - 2DD498313DA488A5063C4C1B, - 5B33FFE120A47EF42CBC05E4, - 552D45FB250C62F86CD02A57, - 0E8E9829E95E32163F45482D, - 6801797B247CB3A6890C0AB0, - B0B82AB2D9B0950F67B11BEA, - 379B4A89E5403B57A2009E76, - 6ED121D4FEE575408B9612AB, - 9ADE436BC62FB84E297C1CA0, - 03D534E5B18011C3E03CDD40, - 06E2ED69E9FAC199D559F276, - 9801CCC32F01818B39CFD88E, - FE553DDF4F83DABF13DF4A2B, - 68DB48B0EC9E5E37C6B5281C, - 96E9017FBE104E9EADC586B1, - BA6C6EF4C88D49C640DA7BF6, - 0B124D9CE361014F815A5958, - C701E3FCB168A3B4A31C4242, - 04F6D85CCF26A7F6DE589876, - 62912A2DA2F01212517938E7, - 36D770FCDAC86084A495B96E, - DA2A4714F1A6957A4F2B8D48, - CE9A64287FCEF00DD2BA6AEE, - 2AC6F3BFAAA21E21076A9F8D, - B8DD4DB0BD1A6B38BBF92413, - 1C0B1362E81C8B073BF0DCEC, - 63BEC07A51CB8E516B38ECD4, - C8F81E843F446868FAD88197, - 50D91A2EC0ABF894E612D936, - 82568CF438EF4C950E4A42DF, - B2E9D0C534DDE9F96921A054, - C8D06AE9C68A675A87DC9C99, - FE2999972FE3D6E251DA6653, - 8B2193898D3465B5995EE98A, - 4FB3EE200AEA14C7218D7034, - 81E79D9217773BF0E39F7812, - 2A360CDF2B5A46B282CEA2C4, - 01FD07AB480226E84D52F591, - D8B9941A1375579D6CE7C1C4, - 0DE731ED3EC994B9227C2741, - A124FE5709D9324B5BAFFE53, - A84A5CA4654AE87192A6A096, - 55EDB4D9B702B469DB4655C3 ); runOnlyForDeploymentPostprocessing = 0; }; - 01555BA382FAED280FF5F58A = { isa = PBXNativeTarget; buildConfigurationList = D14EC3F0DC5861E37D35E15A; buildPhases = ( - 8914D147048B9EE245989ACB ); buildRules = ( ); dependencies = ( ); name = Juce; productName = Juce; productReference = 389351359BA78C682E1931A6; productType = "com.apple.product-type.library.static"; }; - FCFFEDFC83101B196BFA2AE2 = { isa = PBXProject; buildConfigurationList = 3A1CB6B5ECF4A79CDE35CC66; compatibilityVersion = "Xcode 3.1"; hasScannedForEncodings = 0; mainGroup = 25F381A264FFB3735F124DCC; projectDirPath = ""; projectRoot = ""; targets = ( 01555BA382FAED280FF5F58A ); }; - }; - rootObject = FCFFEDFC83101B196BFA2AE2; -} diff --git a/Juce.jucer b/Juce.jucer deleted file mode 100644 index 368cfaa2ff..0000000000 --- a/Juce.jucer +++ /dev/null @@ -1,1640 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/amalgamation/juce_amalgamated1.cpp b/amalgamation/juce_amalgamated1.cpp index 4bb5f6e4b0..08bce1c572 100644 --- a/amalgamation/juce_amalgamated1.cpp +++ b/amalgamation/juce_amalgamated1.cpp @@ -27,6 +27,5 @@ #define JUCE_BUILD_MISC 0 #define JUCE_BUILD_GUI 0 #define JUCE_BUILD_NATIVE 0 -#define JUCE_BUILD_AMALGAMATION 1 #include "juce_amalgamated_template.cpp" diff --git a/amalgamation/juce_amalgamated2.cpp b/amalgamation/juce_amalgamated2.cpp index 300b382e84..bbb143a7f4 100644 --- a/amalgamation/juce_amalgamated2.cpp +++ b/amalgamation/juce_amalgamated2.cpp @@ -27,6 +27,5 @@ #define JUCE_BUILD_MISC 1 #define JUCE_BUILD_GUI 0 #define JUCE_BUILD_NATIVE 0 -#define JUCE_BUILD_AMALGAMATION 1 #include "juce_amalgamated_template.cpp" diff --git a/amalgamation/juce_amalgamated3.cpp b/amalgamation/juce_amalgamated3.cpp index dca42af532..559fb631d4 100644 --- a/amalgamation/juce_amalgamated3.cpp +++ b/amalgamation/juce_amalgamated3.cpp @@ -27,6 +27,5 @@ #define JUCE_BUILD_MISC 0 #define JUCE_BUILD_GUI 1 #define JUCE_BUILD_NATIVE 0 -#define JUCE_BUILD_AMALGAMATION 1 #include "juce_amalgamated_template.cpp" diff --git a/amalgamation/juce_amalgamated4.cpp b/amalgamation/juce_amalgamated4.cpp index aaf4deea2c..95631abeaa 100644 --- a/amalgamation/juce_amalgamated4.cpp +++ b/amalgamation/juce_amalgamated4.cpp @@ -27,6 +27,5 @@ #define JUCE_BUILD_MISC 0 #define JUCE_BUILD_GUI 0 #define JUCE_BUILD_NATIVE 1 -#define JUCE_BUILD_AMALGAMATION 1 #include "juce_amalgamated_template.cpp" diff --git a/amalgamation/juce_amalgamated_template.cpp b/amalgamation/juce_amalgamated_template.cpp index 2185c23781..6285280165 100644 --- a/amalgamation/juce_amalgamated_template.cpp +++ b/amalgamation/juce_amalgamated_template.cpp @@ -24,12 +24,15 @@ */ /* - This monolithic file contains the entire Juce source tree! - - To build an app which uses Juce, all you need to do is to add this - file to your project, and include juce.h in your own cpp files. - + PLEASE NOTE! This file is just here to help transition old code to the newer + modularised layout - but it will be removed at some point in the future, so + you should update your projects to use the newer design as soon as possible. */ +#ifdef _MSC_VER + #pragma message ("The amalgamated files are now deprecated - please include juce modules directly, or preferably let the introjucer handle the inclusion of source code in your project.") +#else + #warning "The amalgamated files are now deprecated - please include juce modules directly, or preferably let the introjucer handle the inclusion of source code in your project." +#endif #ifdef __JUCE_JUCEHEADER__ /* When you add the amalgamated cpp file to your project, you mustn't include it in @@ -38,9 +41,6 @@ #error #endif -#include "../src/core/juce_TargetPlatform.h" // FORCE_AMALGAMATOR_INCLUDE -#include "../juce_Config.h" // FORCE_AMALGAMATOR_INCLUDE - #ifndef JUCE_BUILD_CORE #define JUCE_BUILD_CORE 1 #endif @@ -57,370 +57,35 @@ #if JUCE_ONLY_BUILD_CORE_LIBRARY #undef JUCE_BUILD_MISC #undef JUCE_BUILD_GUI + #undef JUCE_BUILD_NATIVE #endif -#ifndef JUCE_NAMESPACE - #define JUCE_NAMESPACE juce -#endif +#define JUCE_AMALGAMATED_INCLUDE 1 -//============================================================================== -#if JUCE_BUILD_NATIVE || JUCE_BUILD_CORE || (JUCE_BUILD_MISC && (JUCE_PLUGINHOST_VST || JUCE_PLUGINHOST_AU)) - #if JUCE_WINDOWS - #include "../src/native/windows/juce_win32_NativeIncludes.h" - #elif JUCE_LINUX - #include "../src/native/linux/juce_linux_NativeIncludes.h" - #elif JUCE_MAC || JUCE_IOS - #include "../src/native/mac/juce_mac_NativeIncludes.h" - #elif JUCE_ANDROID - #include "../src/native/android/juce_android_NativeIncludes.h" - #else - #error "Unknown platform!" - #endif -#endif - -//============================================================================== -#define DONT_SET_USING_JUCE_NAMESPACE 1 -#undef max -#undef min -#define NO_DUMMY_DECL - -#define JUCE_AMALGAMATED_TEMPLATE 1 - -#if (JUCE_BUILD_NATIVE || JUCE_BUILD_AMALGAMATION) && ! defined (__JUCE_AMALGAMATED_TEMPLATE_JUCEHEADER__) - #include "../juce_amalgamated.h" // FORCE_AMALGAMATOR_INCLUDE -#endif - -#if (defined(_MSC_VER) && (_MSC_VER <= 1200)) - #pragma warning (disable: 4309 4305) -#endif - -#if JUCE_MAC && JUCE_32BIT && JUCE_SUPPORT_CARBON && JUCE_BUILD_NATIVE && ! JUCE_ONLY_BUILD_CORE_LIBRARY - BEGIN_JUCE_NAMESPACE - #include "../src/native/mac/juce_mac_CarbonViewWrapperComponent.h" - END_JUCE_NAMESPACE -#endif - -//============================================================================== #if JUCE_BUILD_CORE - #include "../src/core/juce_FileLogger.cpp" - #include "../src/core/juce_Logger.cpp" - #include "../src/maths/juce_Random.cpp" - #include "../src/core/juce_RelativeTime.cpp" - #include "../src/core/juce_SystemStats.cpp" - #include "../src/core/juce_Result.cpp" - #include "../src/core/juce_Time.cpp" - #include "../src/containers/juce_AbstractFifo.cpp" - #include "../src/maths/juce_BigInteger.cpp" - #include "../src/memory/juce_MemoryBlock.cpp" - #include "../src/containers/juce_PropertySet.cpp" - #include "../src/text/juce_Identifier.cpp" - #include "../src/containers/juce_Variant.cpp" - #include "../src/containers/juce_NamedValueSet.cpp" - #include "../src/containers/juce_DynamicObject.cpp" - #include "../src/maths/juce_Expression.cpp" - #include "../src/cryptography/juce_BlowFish.cpp" - #include "../src/cryptography/juce_MD5.cpp" - #include "../src/cryptography/juce_SHA256.cpp" - #include "../src/cryptography/juce_Primes.cpp" - #include "../src/cryptography/juce_RSAKey.cpp" - #include "../src/io/streams/juce_InputStream.cpp" - #include "../src/io/streams/juce_OutputStream.cpp" - #include "../src/io/files/juce_DirectoryIterator.cpp" - #include "../src/io/files/juce_File.cpp" - #include "../src/io/files/juce_FileInputStream.cpp" - #include "../src/io/files/juce_FileOutputStream.cpp" - #include "../src/io/files/juce_FileSearchPath.cpp" - #include "../src/io/files/juce_NamedPipe.cpp" - #include "../src/io/files/juce_TemporaryFile.cpp" - #include "../src/io/network/juce_Socket.cpp" - #include "../src/io/network/juce_URL.cpp" - #include "../src/io/network/juce_MACAddress.cpp" - #include "../src/io/streams/juce_BufferedInputStream.cpp" - #include "../src/io/streams/juce_FileInputSource.cpp" - #include "../src/io/streams/juce_MemoryInputStream.cpp" - #include "../src/io/streams/juce_MemoryOutputStream.cpp" - #include "../src/io/streams/juce_SubregionStream.cpp" - #include "../src/core/juce_PerformanceCounter.cpp" - #include "../src/core/juce_Uuid.cpp" - #include "../src/io/files/juce_ZipFile.cpp" - #include "../src/text/juce_CharacterFunctions.cpp" - #include "../src/text/juce_LocalisedStrings.cpp" - #include "../src/text/juce_String.cpp" - #include "../src/text/juce_StringArray.cpp" - #include "../src/text/juce_StringPairArray.cpp" - #include "../src/text/juce_StringPool.cpp" - #include "../src/text/juce_XmlDocument.cpp" - #include "../src/text/juce_XmlElement.cpp" - #include "../src/text/juce_JSON.cpp" - #include "../src/threads/juce_ReadWriteLock.cpp" - #include "../src/threads/juce_Thread.cpp" - #include "../src/threads/juce_ThreadPool.cpp" - #include "../src/threads/juce_TimeSliceThread.cpp" + #include "../modules/juce_core/juce_core.cpp" #endif #if JUCE_BUILD_MISC - #include "../src/containers/juce_ValueTree.cpp" - #include "../src/containers/juce_Value.cpp" - #include "../src/application/juce_Application.cpp" - #include "../src/application/juce_ApplicationCommandInfo.cpp" - #include "../src/application/juce_ApplicationCommandManager.cpp" - #include "../src/application/juce_ApplicationCommandTarget.cpp" - #include "../src/application/juce_ApplicationProperties.cpp" - #include "../src/utilities/juce_PropertiesFile.cpp" - #include "../src/utilities/juce_FileBasedDocument.cpp" - #include "../src/utilities/juce_RecentlyOpenedFilesList.cpp" - #include "../src/utilities/juce_UndoManager.cpp" - #include "../src/utilities/juce_UnitTest.cpp" - #include "../src/utilities/juce_DeletedAtShutdown.cpp" - #include "../src/audio/audio_file_formats/juce_AiffAudioFormat.cpp" - #include "../src/audio/audio_file_formats/juce_AudioFormat.cpp" - #include "../src/audio/audio_file_formats/juce_AudioFormatReader.cpp" - #include "../src/audio/audio_file_formats/juce_AudioFormatWriter.cpp" - #include "../src/audio/audio_file_formats/juce_AudioFormatManager.cpp" - #include "../src/audio/audio_file_formats/juce_AudioSubsectionReader.cpp" - #include "../src/audio/audio_file_formats/juce_AudioThumbnail.cpp" - #include "../src/audio/audio_file_formats/juce_AudioThumbnailCache.cpp" - #include "../src/audio/audio_file_formats/juce_QuickTimeAudioFormat.cpp" - #include "../src/audio/audio_file_formats/juce_WavAudioFormat.cpp" - #include "../src/audio/audio_file_formats/juce_AudioCDReader.cpp" - #include "../src/audio/audio_sources/juce_AudioFormatReaderSource.cpp" - #include "../src/audio/audio_sources/juce_AudioSourcePlayer.cpp" - #include "../src/audio/audio_sources/juce_AudioTransportSource.cpp" - #include "../src/audio/audio_sources/juce_BufferingAudioSource.cpp" - #include "../src/audio/audio_sources/juce_ChannelRemappingAudioSource.cpp" - #include "../src/audio/audio_sources/juce_IIRFilterAudioSource.cpp" - #include "../src/audio/audio_sources/juce_ReverbAudioSource.cpp" - #include "../src/audio/audio_sources/juce_MixerAudioSource.cpp" - #include "../src/audio/audio_sources/juce_ResamplingAudioSource.cpp" - #include "../src/audio/audio_sources/juce_ToneGeneratorAudioSource.cpp" - #include "../src/audio/devices/juce_AudioDeviceManager.cpp" - #include "../src/audio/devices/juce_AudioIODevice.cpp" - #include "../src/audio/devices/juce_AudioIODeviceType.cpp" - #include "../src/audio/dsp/juce_AudioDataConverters.cpp" - #include "../src/audio/dsp/juce_AudioSampleBuffer.cpp" - #include "../src/audio/dsp/juce_IIRFilter.cpp" - #include "../src/audio/midi/juce_MidiOutput.cpp" - #include "../src/audio/midi/juce_MidiBuffer.cpp" - #include "../src/audio/midi/juce_MidiFile.cpp" - #include "../src/audio/midi/juce_MidiKeyboardState.cpp" - #include "../src/audio/midi/juce_MidiMessage.cpp" - #include "../src/audio/midi/juce_MidiMessageCollector.cpp" - #include "../src/audio/midi/juce_MidiMessageSequence.cpp" - #include "../src/audio/plugin_host/juce_AudioPluginFormat.cpp" - #include "../src/audio/plugin_host/juce_AudioPluginFormatManager.cpp" - #include "../src/audio/plugin_host/juce_KnownPluginList.cpp" - #include "../src/audio/plugin_host/juce_PluginDescription.cpp" - #include "../src/audio/plugin_host/juce_PluginDirectoryScanner.cpp" - #include "../src/audio/plugin_host/juce_PluginListComponent.cpp" - #include "../src/audio/plugin_host/formats/juce_AudioUnitPluginFormat.mm" - #include "../src/audio/plugin_host/formats/juce_VSTPluginFormat.mm" - #include "../src/audio/processors/juce_AudioProcessor.cpp" - #include "../src/audio/processors/juce_AudioProcessorEditor.cpp" - #include "../src/audio/processors/juce_AudioProcessorGraph.cpp" - #include "../src/audio/processors/juce_AudioProcessorPlayer.cpp" - #include "../src/audio/processors/juce_GenericAudioProcessorEditor.cpp" - #include "../src/audio/synthesisers/juce_Sampler.cpp" - #include "../src/audio/synthesisers/juce_Synthesiser.cpp" - #include "../src/events/juce_ActionBroadcaster.cpp" - #include "../src/events/juce_AsyncUpdater.cpp" - #include "../src/events/juce_ChangeBroadcaster.cpp" - #include "../src/events/juce_InterprocessConnection.cpp" - #include "../src/events/juce_InterprocessConnectionServer.cpp" - #include "../src/events/juce_Message.cpp" - #include "../src/events/juce_MessageListener.cpp" - #include "../src/events/juce_MessageManager.cpp" - #include "../src/events/juce_MultiTimer.cpp" - #include "../src/events/juce_Timer.cpp" + #include "../modules/juce_cryptography/juce_cryptography.cpp" + #include "../modules/juce_data_structures/juce_data_structures.cpp" + #include "../modules/juce_events/juce_events.cpp" + #include "../modules/juce_graphics/juce_graphics.cpp" +#endif + +#if JUCE_BUILD_NATIVE + #include "../modules/juce_video/juce_video.cpp" + #if JUCE_OPENGL + #include "../modules/juce_opengl/juce_opengl.cpp" + #endif + #include "../modules/juce_audio_basics/juce_audio_basics.cpp" + #include "../modules/juce_audio_formats/juce_audio_formats.cpp" + #include "../modules/juce_audio_processors/juce_audio_processors.cpp" + #include "../modules/juce_audio_devices/juce_audio_devices.cpp" #endif #if JUCE_BUILD_GUI - #include "../src/gui/components/juce_Component.cpp" - #include "../src/gui/components/juce_ComponentListener.cpp" - #include "../src/gui/components/juce_Desktop.cpp" - #include "../src/gui/components/juce_ModalComponentManager.cpp" - #include "../src/gui/components/buttons/juce_ArrowButton.cpp" - #include "../src/gui/components/buttons/juce_Button.cpp" - #include "../src/gui/components/buttons/juce_DrawableButton.cpp" - #include "../src/gui/components/buttons/juce_HyperlinkButton.cpp" - #include "../src/gui/components/buttons/juce_ImageButton.cpp" - #include "../src/gui/components/buttons/juce_ShapeButton.cpp" - #include "../src/gui/components/buttons/juce_TextButton.cpp" - #include "../src/gui/components/buttons/juce_ToggleButton.cpp" - #include "../src/gui/components/buttons/juce_ToolbarButton.cpp" - #include "../src/gui/components/code_editor/juce_CodeDocument.cpp" - #include "../src/gui/components/code_editor/juce_CodeEditorComponent.cpp" - #include "../src/gui/components/code_editor/juce_CPlusPlusCodeTokeniser.cpp" - #include "../src/gui/components/controls/juce_ComboBox.cpp" - #include "../src/gui/components/controls/juce_ImageComponent.cpp" - #include "../src/gui/components/controls/juce_Label.cpp" - #include "../src/gui/components/controls/juce_ListBox.cpp" - #include "../src/gui/components/controls/juce_ProgressBar.cpp" - #include "../src/gui/components/controls/juce_Slider.cpp" - #include "../src/gui/components/controls/juce_TableHeaderComponent.cpp" - #include "../src/gui/components/controls/juce_TableListBox.cpp" - #include "../src/gui/components/controls/juce_TextEditor.cpp" - #include "../src/gui/components/controls/juce_Toolbar.cpp" - #include "../src/gui/components/controls/juce_ToolbarItemComponent.cpp" - #include "../src/gui/components/controls/juce_ToolbarItemPalette.cpp" - #include "../src/gui/components/controls/juce_TreeView.cpp" - #include "../src/gui/components/filebrowser/juce_DirectoryContentsDisplayComponent.cpp" - #include "../src/gui/components/filebrowser/juce_DirectoryContentsList.cpp" - #include "../src/gui/components/filebrowser/juce_FileBrowserComponent.cpp" - #include "../src/gui/components/filebrowser/juce_FileChooser.cpp" - #include "../src/gui/components/filebrowser/juce_FileChooserDialogBox.cpp" - #include "../src/gui/components/filebrowser/juce_FileFilter.cpp" - #include "../src/gui/components/filebrowser/juce_FileListComponent.cpp" - #include "../src/gui/components/filebrowser/juce_FilenameComponent.cpp" - #include "../src/gui/components/filebrowser/juce_FileSearchPathListComponent.cpp" - #include "../src/gui/components/filebrowser/juce_FileTreeComponent.cpp" - #include "../src/gui/components/filebrowser/juce_ImagePreviewComponent.cpp" - #include "../src/gui/components/filebrowser/juce_WildcardFileFilter.cpp" - #include "../src/gui/components/keyboard/juce_KeyboardFocusTraverser.cpp" - #include "../src/gui/components/keyboard/juce_KeyListener.cpp" - #include "../src/gui/components/keyboard/juce_KeyMappingEditorComponent.cpp" - #include "../src/gui/components/keyboard/juce_KeyPress.cpp" - #include "../src/gui/components/keyboard/juce_KeyPressMappingSet.cpp" - #include "../src/gui/components/keyboard/juce_ModifierKeys.cpp" - #include "../src/gui/components/keyboard/juce_CaretComponent.cpp" - #include "../src/gui/components/layout/juce_ComponentAnimator.cpp" - #include "../src/gui/components/layout/juce_ComponentBuilder.cpp" - #include "../src/gui/components/layout/juce_ComponentBoundsConstrainer.cpp" - #include "../src/gui/components/layout/juce_ComponentMovementWatcher.cpp" - #include "../src/gui/components/layout/juce_GroupComponent.cpp" - #include "../src/gui/components/layout/juce_MultiDocumentPanel.cpp" - #include "../src/gui/components/layout/juce_ResizableBorderComponent.cpp" - #include "../src/gui/components/layout/juce_ResizableCornerComponent.cpp" - #include "../src/gui/components/layout/juce_ResizableEdgeComponent.cpp" - #include "../src/gui/components/layout/juce_ScrollBar.cpp" - #include "../src/gui/components/layout/juce_StretchableLayoutManager.cpp" - #include "../src/gui/components/layout/juce_StretchableLayoutResizerBar.cpp" - #include "../src/gui/components/layout/juce_StretchableObjectResizer.cpp" - #include "../src/gui/components/layout/juce_TabbedButtonBar.cpp" - #include "../src/gui/components/layout/juce_TabbedComponent.cpp" - #include "../src/gui/components/layout/juce_Viewport.cpp" - #include "../src/gui/components/lookandfeel/juce_LookAndFeel.cpp" - #include "../src/gui/components/lookandfeel/juce_OldSchoolLookAndFeel.cpp" - #include "../src/gui/components/menus/juce_MenuBarComponent.cpp" - #include "../src/gui/components/menus/juce_MenuBarModel.cpp" - #include "../src/gui/components/menus/juce_PopupMenu.cpp" - #include "../src/gui/components/mouse/juce_ComponentDragger.cpp" - #include "../src/gui/components/mouse/juce_DragAndDropContainer.cpp" - #include "../src/gui/components/mouse/juce_MouseCursor.cpp" - #include "../src/gui/components/mouse/juce_MouseEvent.cpp" - #include "../src/gui/components/mouse/juce_MouseInputSource.cpp" - #include "../src/gui/components/mouse/juce_MouseListener.cpp" - #include "../src/gui/components/properties/juce_BooleanPropertyComponent.cpp" - #include "../src/gui/components/properties/juce_ButtonPropertyComponent.cpp" - #include "../src/gui/components/properties/juce_ChoicePropertyComponent.cpp" - #include "../src/gui/components/properties/juce_PropertyComponent.cpp" - #include "../src/gui/components/properties/juce_PropertyPanel.cpp" - #include "../src/gui/components/properties/juce_SliderPropertyComponent.cpp" - #include "../src/gui/components/properties/juce_TextPropertyComponent.cpp" - #include "../src/gui/components/special/juce_AudioDeviceSelectorComponent.cpp" - #include "../src/gui/components/special/juce_BubbleComponent.cpp" - #include "../src/gui/components/special/juce_BubbleMessageComponent.cpp" - #include "../src/gui/components/special/juce_ColourSelector.cpp" - #include "../src/gui/components/special/juce_DropShadower.cpp" - #include "../src/gui/components/special/juce_MidiKeyboardComponent.cpp" - #include "../src/gui/components/special/juce_OpenGLComponent.cpp" - #include "../src/gui/components/special/juce_PreferencesPanel.cpp" - #include "../src/gui/components/special/juce_SystemTrayIconComponent.cpp" - #include "../src/gui/components/windows/juce_AlertWindow.cpp" - #include "../src/gui/components/windows/juce_CallOutBox.cpp" - #include "../src/gui/components/windows/juce_ComponentPeer.cpp" - #include "../src/gui/components/windows/juce_DialogWindow.cpp" - #include "../src/gui/components/windows/juce_DocumentWindow.cpp" - #include "../src/gui/components/windows/juce_ResizableWindow.cpp" - #include "../src/gui/components/windows/juce_SplashScreen.cpp" - #include "../src/gui/components/windows/juce_ThreadWithProgressWindow.cpp" - #include "../src/gui/components/windows/juce_TooltipWindow.cpp" - #include "../src/gui/components/windows/juce_TopLevelWindow.cpp" - #include "../src/gui/components/positioning/juce_MarkerList.cpp" - #include "../src/gui/components/positioning/juce_RelativeCoordinate.cpp" - #include "../src/gui/components/positioning/juce_RelativePoint.cpp" - #include "../src/gui/components/positioning/juce_RelativeRectangle.cpp" - #include "../src/gui/components/positioning/juce_RelativePointPath.cpp" - #include "../src/gui/components/positioning/juce_RelativeParallelogram.cpp" - #include "../src/gui/components/positioning/juce_RelativeCoordinatePositioner.cpp" -#endif - -// (put these in misc to balance the file sizes and avoid problems in iphone build) -#if JUCE_BUILD_MISC - #include "../src/gui/graphics/colour/juce_Colour.cpp" - #include "../src/gui/graphics/colour/juce_ColourGradient.cpp" - #include "../src/gui/graphics/colour/juce_Colours.cpp" - #include "../src/gui/graphics/contexts/juce_EdgeTable.cpp" - #include "../src/gui/graphics/contexts/juce_FillType.cpp" - #include "../src/gui/graphics/contexts/juce_GraphicsContext.cpp" - #include "../src/gui/graphics/contexts/juce_Justification.cpp" - #include "../src/gui/graphics/contexts/juce_LowLevelGraphicsPostScriptRenderer.cpp" - #include "../src/gui/graphics/contexts/juce_LowLevelGraphicsSoftwareRenderer.cpp" - #include "../src/gui/graphics/contexts/juce_RectanglePlacement.cpp" - #include "../src/gui/graphics/drawables/juce_Drawable.cpp" - #include "../src/gui/graphics/drawables/juce_DrawableShape.cpp" - #include "../src/gui/graphics/drawables/juce_DrawableComposite.cpp" - #include "../src/gui/graphics/drawables/juce_DrawableImage.cpp" - #include "../src/gui/graphics/drawables/juce_DrawablePath.cpp" - #include "../src/gui/graphics/drawables/juce_DrawableRectangle.cpp" - #include "../src/gui/graphics/drawables/juce_DrawableText.cpp" - #include "../src/gui/graphics/drawables/juce_SVGParser.cpp" - #include "../src/gui/graphics/effects/juce_DropShadowEffect.cpp" - #include "../src/gui/graphics/effects/juce_GlowEffect.cpp" - #include "../src/gui/graphics/fonts/juce_Font.cpp" - #include "../src/gui/graphics/fonts/juce_GlyphArrangement.cpp" - #include "../src/gui/graphics/fonts/juce_TextLayout.cpp" - #include "../src/gui/graphics/fonts/juce_Typeface.cpp" - #include "../src/gui/graphics/fonts/juce_CustomTypeface.cpp" - #include "../src/gui/graphics/geometry/juce_AffineTransform.cpp" - #include "../src/gui/graphics/geometry/juce_Path.cpp" - #include "../src/gui/graphics/geometry/juce_PathIterator.cpp" - #include "../src/gui/graphics/geometry/juce_PathStrokeType.cpp" - #include "../src/gui/graphics/geometry/juce_RectangleList.cpp" - #include "../src/gui/graphics/imaging/juce_Image.cpp" - #include "../src/gui/graphics/imaging/juce_ImageCache.cpp" - #include "../src/gui/graphics/imaging/juce_ImageConvolutionKernel.cpp" - #include "../src/gui/graphics/imaging/juce_ImageFileFormat.cpp" - #include "../src/gui/graphics/imaging/image_file_formats/juce_GIFLoader.cpp" -#endif - -//============================================================================== -// some files include lots of library code, so leave them to the end to avoid cluttering -// up the build for the clean files. -#if JUCE_BUILD_CORE - #include "../src/io/streams/juce_GZIPCompressorOutputStream.cpp" - #include "../src/io/streams/juce_GZIPDecompressorInputStream.cpp" -#endif - -#if JUCE_BUILD_NATIVE && ! JUCE_ONLY_BUILD_CORE_LIBRARY - #include "../src/audio/audio_file_formats/juce_CoreAudioFormat.cpp" - #include "../src/audio/audio_file_formats/juce_FlacAudioFormat.cpp" - #include "../src/audio/audio_file_formats/juce_OggVorbisAudioFormat.cpp" -#endif - -// do these in the core section to help balance the sizes -#if JUCE_BUILD_CORE && ! JUCE_ONLY_BUILD_CORE_LIBRARY - #include "../src/gui/graphics/imaging/image_file_formats/juce_JPEGLoader.cpp" - #include "../src/gui/graphics/imaging/image_file_formats/juce_PNGLoader.cpp" -#endif - -//============================================================================== -#if JUCE_BUILD_NATIVE - - // Non-public headers that are needed by more than one platform must be included - // before the platform-specific sections.. - BEGIN_JUCE_NAMESPACE - #if ! JUCE_ONLY_BUILD_CORE_LIBRARY - #include "../src/native/common/juce_MidiDataConcatenator.h" - #endif - END_JUCE_NAMESPACE - - #if JUCE_WINDOWS - #include "../src/native/windows/juce_win32_NativeCode.cpp" - #elif JUCE_LINUX - #include "../src/native/linux/juce_linux_NativeCode.cpp" - #elif JUCE_MAC || JUCE_IOS - #include "../src/native/mac/juce_mac_NativeCode.mm" - #elif JUCE_ANDROID - #include "../src/native/android/juce_android_NativeCode.cpp" - #endif + #include "../modules/juce_gui_basics/juce_gui_basics.cpp" + #include "../modules/juce_gui_extra/juce_gui_extra.cpp" + #include "../modules/juce_audio_utils/juce_audio_utils.cpp" #endif diff --git a/bin/ReadMe.txt b/bin/ReadMe.txt deleted file mode 100644 index 632c91e14c..0000000000 --- a/bin/ReadMe.txt +++ /dev/null @@ -1 +0,0 @@ -This folder is where the compiled libs and intermediate files get stored... diff --git a/extras/Introjucer/Builds/Linux/Makefile b/extras/Introjucer/Builds/Linux/Makefile index 3e70d93421..f71dda5964 100644 --- a/extras/Introjucer/Builds/Linux/Makefile +++ b/extras/Introjucer/Builds/Linux/Makefile @@ -1,5 +1,5 @@ -# Automatically generated makefile, created by the Jucer -# Don't edit this file! Your changes will be overwritten when you re-save the Jucer project! +# Automatically generated makefile, created by the Introjucer +# Don't edit this file! Your changes will be overwritten when you re-save the Introjucer project! ifndef CONFIG CONFIG=Debug @@ -17,12 +17,12 @@ ifeq ($(CONFIG),Debug) LIBDIR := build OBJDIR := build/intermediate/Debug OUTDIR := build - CPPFLAGS := $(DEPFLAGS) -D "LINUX=1" -D "DEBUG=1" -D "_DEBUG=1" -D "JUCER_LINUX_MAKE_7346DA2A=1" -I "/usr/include" -I "/usr/include/freetype2" + CPPFLAGS := $(DEPFLAGS) -D "LINUX=1" -D "DEBUG=1" -D "_DEBUG=1" -D "JUCER_LINUX_MAKE_7346DA2A=1" -I /usr/include -I /usr/include/freetype2 -I ../../JuceLibraryCode CFLAGS += $(CPPFLAGS) $(TARGET_ARCH) -g -ggdb -O0 CXXFLAGS += $(CFLAGS) - LDFLAGS += -L$(BINDIR) -L$(LIBDIR) -L"/usr/X11R6/lib/" -L"../../../../../juce/bin" -lfreetype -lpthread -lrt -lX11 -lGL -lGLU -lXinerama -lasound + LDFLAGS += -L$(BINDIR) -L$(LIBDIR) -L/usr/X11R6/lib/ -lfreetype -lpthread -lrt -lX11 -lGL -lGLU -lXinerama -lasound -lXext LDDEPS := - RESFLAGS := -D "LINUX=1" -D "DEBUG=1" -D "_DEBUG=1" -D "JUCER_LINUX_MAKE_7346DA2A=1" -I "/usr/include" -I "/usr/include/freetype2" + RESFLAGS := -D "LINUX=1" -D "DEBUG=1" -D "_DEBUG=1" -D "JUCER_LINUX_MAKE_7346DA2A=1" -I /usr/include -I /usr/include/freetype2 -I ../../JuceLibraryCode TARGET := Introjucer BLDCMD = $(CXX) -o $(OUTDIR)/$(TARGET) $(OBJECTS) $(LDFLAGS) $(RESOURCES) $(TARGET_ARCH) endif @@ -32,45 +32,50 @@ ifeq ($(CONFIG),Release) LIBDIR := build OBJDIR := build/intermediate/Release OUTDIR := build - CPPFLAGS := $(DEPFLAGS) -D "LINUX=1" -D "NDEBUG=1" -D "JUCER_LINUX_MAKE_7346DA2A=1" -I "/usr/include" -I "/usr/include/freetype2" + CPPFLAGS := $(DEPFLAGS) -D "LINUX=1" -D "NDEBUG=1" -D "JUCER_LINUX_MAKE_7346DA2A=1" -I /usr/include -I /usr/include/freetype2 -I ../../JuceLibraryCode CFLAGS += $(CPPFLAGS) $(TARGET_ARCH) -O3 CXXFLAGS += $(CFLAGS) - LDFLAGS += -L$(BINDIR) -L$(LIBDIR) -L"/usr/X11R6/lib/" -L"../../../../../juce/bin" -lfreetype -lpthread -lrt -lX11 -lGL -lGLU -lXinerama -lasound + LDFLAGS += -L$(BINDIR) -L$(LIBDIR) -L/usr/X11R6/lib/ -lfreetype -lpthread -lrt -lX11 -lGL -lGLU -lXinerama -lasound -lXext LDDEPS := - RESFLAGS := -D "LINUX=1" -D "NDEBUG=1" -D "JUCER_LINUX_MAKE_7346DA2A=1" -I "/usr/include" -I "/usr/include/freetype2" + RESFLAGS := -D "LINUX=1" -D "NDEBUG=1" -D "JUCER_LINUX_MAKE_7346DA2A=1" -I /usr/include -I /usr/include/freetype2 -I ../../JuceLibraryCode TARGET := Introjucer BLDCMD = $(CXX) -o $(OUTDIR)/$(TARGET) $(OBJECTS) $(LDFLAGS) $(RESOURCES) $(TARGET_ARCH) endif OBJECTS := \ + $(OBJDIR)/jucer_CommandLine_f35de107.o \ $(OBJDIR)/jucer_DocumentEditorComponent_695dff1d.o \ $(OBJDIR)/jucer_FilePreviewComponent_55512f53.o \ $(OBJDIR)/jucer_JuceUpdater_cf7865c4.o \ $(OBJDIR)/jucer_Main_f8488f5b.o \ $(OBJDIR)/jucer_MainWindow_1e163aeb.o \ $(OBJDIR)/jucer_OpenDocumentManager_4c72d210.o \ - $(OBJDIR)/jucer_SourceCodeEditor_461f5487.o \ $(OBJDIR)/jucer_GroupInformationComponent_631ccf01.o \ + $(OBJDIR)/jucer_Module_3f7666a5.o \ $(OBJDIR)/jucer_NewFileWizard_b8a19ef8.o \ $(OBJDIR)/jucer_NewProjectWizard_7a15bf5d.o \ $(OBJDIR)/jucer_Project_c131864a.o \ $(OBJDIR)/jucer_ProjectContentComponent_60de0eee.o \ - $(OBJDIR)/jucer_ProjectExporter_eed6e04b.o \ $(OBJDIR)/jucer_ProjectInformationComponent_4746e69b.o \ $(OBJDIR)/jucer_ProjectTreeViewBase_63c2bdbe.o \ $(OBJDIR)/jucer_ProjectType_1bc27a24.o \ - $(OBJDIR)/jucer_ResourceFile_7e7734e3.o \ $(OBJDIR)/jucer_TreeViewTypes_4a765287.o \ + $(OBJDIR)/jucer_ProjectExporter_eefe2e5b.o \ + $(OBJDIR)/jucer_ResourceFile_6af120d3.o \ $(OBJDIR)/jucer_CodeHelpers_c317179c.o \ $(OBJDIR)/jucer_FileHelpers_f98ed0ad.o \ $(OBJDIR)/jucer_JucerTreeViewBase_d043309d.o \ $(OBJDIR)/jucer_MiscUtilities_25b68c82.o \ $(OBJDIR)/jucer_StoredSettings_26078d2c.o \ + $(OBJDIR)/jucer_SourceCodeEditor_461f5487.o \ $(OBJDIR)/BinaryData_ce4232d4.o \ - $(OBJDIR)/JuceLibraryCode1_682c927f.o \ - $(OBJDIR)/JuceLibraryCode2_683aaa00.o \ - $(OBJDIR)/JuceLibraryCode3_6848c181.o \ - $(OBJDIR)/JuceLibraryCode4_6856d902.o \ + $(OBJDIR)/juce_core_1ee54a40.o \ + $(OBJDIR)/juce_cryptography_3b1f489a.o \ + $(OBJDIR)/juce_data_structures_84790dfc.o \ + $(OBJDIR)/juce_events_584896b4.o \ + $(OBJDIR)/juce_graphics_f9afc18.o \ + $(OBJDIR)/juce_gui_basics_90929794.o \ + $(OBJDIR)/juce_gui_extra_b81d9e1c.o \ .PHONY: clean @@ -87,6 +92,11 @@ clean: -@rm -rf $(OBJDIR)/* -@rm -rf $(OBJDIR) +$(OBJDIR)/jucer_CommandLine_f35de107.o: ../../Source/Application/jucer_CommandLine.cpp + -@mkdir -p $(OBJDIR) + @echo "Compiling jucer_CommandLine.cpp" + @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" + $(OBJDIR)/jucer_DocumentEditorComponent_695dff1d.o: ../../Source/Application/jucer_DocumentEditorComponent.cpp -@mkdir -p $(OBJDIR) @echo "Compiling jucer_DocumentEditorComponent.cpp" @@ -117,16 +127,16 @@ $(OBJDIR)/jucer_OpenDocumentManager_4c72d210.o: ../../Source/Application/jucer_O @echo "Compiling jucer_OpenDocumentManager.cpp" @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" -$(OBJDIR)/jucer_SourceCodeEditor_461f5487.o: ../../Source/Code\ Editor/jucer_SourceCodeEditor.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling jucer_SourceCodeEditor.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - $(OBJDIR)/jucer_GroupInformationComponent_631ccf01.o: ../../Source/Project/jucer_GroupInformationComponent.cpp -@mkdir -p $(OBJDIR) @echo "Compiling jucer_GroupInformationComponent.cpp" @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" +$(OBJDIR)/jucer_Module_3f7666a5.o: ../../Source/Project/jucer_Module.cpp + -@mkdir -p $(OBJDIR) + @echo "Compiling jucer_Module.cpp" + @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" + $(OBJDIR)/jucer_NewFileWizard_b8a19ef8.o: ../../Source/Project/jucer_NewFileWizard.cpp -@mkdir -p $(OBJDIR) @echo "Compiling jucer_NewFileWizard.cpp" @@ -147,11 +157,6 @@ $(OBJDIR)/jucer_ProjectContentComponent_60de0eee.o: ../../Source/Project/jucer_P @echo "Compiling jucer_ProjectContentComponent.cpp" @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" -$(OBJDIR)/jucer_ProjectExporter_eed6e04b.o: ../../Source/Project/jucer_ProjectExporter.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling jucer_ProjectExporter.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - $(OBJDIR)/jucer_ProjectInformationComponent_4746e69b.o: ../../Source/Project/jucer_ProjectInformationComponent.cpp -@mkdir -p $(OBJDIR) @echo "Compiling jucer_ProjectInformationComponent.cpp" @@ -167,16 +172,21 @@ $(OBJDIR)/jucer_ProjectType_1bc27a24.o: ../../Source/Project/jucer_ProjectType.c @echo "Compiling jucer_ProjectType.cpp" @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" -$(OBJDIR)/jucer_ResourceFile_7e7734e3.o: ../../Source/Project/jucer_ResourceFile.cpp - -@mkdir -p $(OBJDIR) - @echo "Compiling jucer_ResourceFile.cpp" - @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" - $(OBJDIR)/jucer_TreeViewTypes_4a765287.o: ../../Source/Project/jucer_TreeViewTypes.cpp -@mkdir -p $(OBJDIR) @echo "Compiling jucer_TreeViewTypes.cpp" @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" +$(OBJDIR)/jucer_ProjectExporter_eefe2e5b.o: ../../Source/Project\ Saving/jucer_ProjectExporter.cpp + -@mkdir -p $(OBJDIR) + @echo "Compiling jucer_ProjectExporter.cpp" + @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" + +$(OBJDIR)/jucer_ResourceFile_6af120d3.o: ../../Source/Project\ Saving/jucer_ResourceFile.cpp + -@mkdir -p $(OBJDIR) + @echo "Compiling jucer_ResourceFile.cpp" + @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" + $(OBJDIR)/jucer_CodeHelpers_c317179c.o: ../../Source/Utility/jucer_CodeHelpers.cpp -@mkdir -p $(OBJDIR) @echo "Compiling jucer_CodeHelpers.cpp" @@ -202,29 +212,49 @@ $(OBJDIR)/jucer_StoredSettings_26078d2c.o: ../../Source/Utility/jucer_StoredSett @echo "Compiling jucer_StoredSettings.cpp" @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" +$(OBJDIR)/jucer_SourceCodeEditor_461f5487.o: ../../Source/Code\ Editor/jucer_SourceCodeEditor.cpp + -@mkdir -p $(OBJDIR) + @echo "Compiling jucer_SourceCodeEditor.cpp" + @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" + $(OBJDIR)/BinaryData_ce4232d4.o: ../../JuceLibraryCode/BinaryData.cpp -@mkdir -p $(OBJDIR) @echo "Compiling BinaryData.cpp" @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" -$(OBJDIR)/JuceLibraryCode1_682c927f.o: ../../JuceLibraryCode/JuceLibraryCode1.cpp +$(OBJDIR)/juce_core_1ee54a40.o: ../../../../modules/juce_core/juce_core.cpp -@mkdir -p $(OBJDIR) - @echo "Compiling JuceLibraryCode1.cpp" + @echo "Compiling juce_core.cpp" @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" -$(OBJDIR)/JuceLibraryCode2_683aaa00.o: ../../JuceLibraryCode/JuceLibraryCode2.cpp +$(OBJDIR)/juce_cryptography_3b1f489a.o: ../../../../modules/juce_cryptography/juce_cryptography.cpp -@mkdir -p $(OBJDIR) - @echo "Compiling JuceLibraryCode2.cpp" + @echo "Compiling juce_cryptography.cpp" @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" -$(OBJDIR)/JuceLibraryCode3_6848c181.o: ../../JuceLibraryCode/JuceLibraryCode3.cpp +$(OBJDIR)/juce_data_structures_84790dfc.o: ../../../../modules/juce_data_structures/juce_data_structures.cpp -@mkdir -p $(OBJDIR) - @echo "Compiling JuceLibraryCode3.cpp" + @echo "Compiling juce_data_structures.cpp" @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" -$(OBJDIR)/JuceLibraryCode4_6856d902.o: ../../JuceLibraryCode/JuceLibraryCode4.cpp +$(OBJDIR)/juce_events_584896b4.o: ../../../../modules/juce_events/juce_events.cpp -@mkdir -p $(OBJDIR) - @echo "Compiling JuceLibraryCode4.cpp" + @echo "Compiling juce_events.cpp" + @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" + +$(OBJDIR)/juce_graphics_f9afc18.o: ../../../../modules/juce_graphics/juce_graphics.cpp + -@mkdir -p $(OBJDIR) + @echo "Compiling juce_graphics.cpp" + @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" + +$(OBJDIR)/juce_gui_basics_90929794.o: ../../../../modules/juce_gui_basics/juce_gui_basics.cpp + -@mkdir -p $(OBJDIR) + @echo "Compiling juce_gui_basics.cpp" + @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" + +$(OBJDIR)/juce_gui_extra_b81d9e1c.o: ../../../../modules/juce_gui_extra/juce_gui_extra.cpp + -@mkdir -p $(OBJDIR) + @echo "Compiling juce_gui_extra.cpp" @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" -include $(OBJECTS:%.o=%.d) diff --git a/extras/Introjucer/Builds/MacOSX/Icon.icns b/extras/Introjucer/Builds/MacOSX/Icon.icns index 7763077cfb..a1d2ba8423 100644 Binary files a/extras/Introjucer/Builds/MacOSX/Icon.icns and b/extras/Introjucer/Builds/MacOSX/Icon.icns differ diff --git a/extras/Introjucer/Builds/MacOSX/The Introjucer.xcodeproj/project.pbxproj b/extras/Introjucer/Builds/MacOSX/The Introjucer.xcodeproj/project.pbxproj index 848939637d..abfcf61a88 100644 --- a/extras/Introjucer/Builds/MacOSX/The Introjucer.xcodeproj/project.pbxproj +++ b/extras/Introjucer/Builds/MacOSX/The Introjucer.xcodeproj/project.pbxproj @@ -3,284 +3,1633 @@ archiveVersion = 1; classes = { }; - objectVersion = 45; + objectVersion = 46; objects = { - 1FD6A59398E3618F79475867 = { isa = PBXBuildFile; fileRef = 55A5264E336AEDD1495796F5; }; - B703C44375C75E5AB099E74A = { isa = PBXBuildFile; fileRef = 43A5218D223AA21E0A55D986; }; - 7BDFF9F0E16DF33A980F46DC = { isa = PBXBuildFile; fileRef = 046FA2877C08618339161EE2; }; - 52A4EFC1F732A9D5BBB61AF5 = { isa = PBXBuildFile; fileRef = B36C44190E6AEEBFA3DB3046; }; - C65112B26E0BB0BB8DBD3F3C = { isa = PBXBuildFile; fileRef = FB3773F08466794F949B0AFF; }; - 2C3270317859BA6DF8EC1458 = { isa = PBXBuildFile; fileRef = A5A4B15B9F5C3D32C82DFDC6; }; - 022036CBB0FBE47C417A6222 = { isa = PBXBuildFile; fileRef = 151135F18422E2B1368D7BC2; }; - AA7B50F22523465B07D4A25B = { isa = PBXBuildFile; fileRef = 6E1144678BD61868D73EF1FB; }; - 93C9F3F27602A33DDC9C2250 = { isa = PBXBuildFile; fileRef = 2767E1D082874D301D5D5F43; }; - DBE3CE9482B19CF1AE700805 = { isa = PBXBuildFile; fileRef = 23CF69B4C644D1E6E61E5C82; }; - 2E6836738CE7EB452FDC7E9A = { isa = PBXBuildFile; fileRef = D9FB1A5365FEEB854A0FF7BF; }; - E63745F5956C698352A2ACA0 = { isa = PBXBuildFile; fileRef = 74125C6A6DE28C538A518C3C; }; - AADBA9EB828F8C6A5E38593B = { isa = PBXBuildFile; fileRef = 3417A0C1AE7900A7E07C1CA1; }; - D6D0659F3F3504012246F13D = { isa = PBXBuildFile; fileRef = AA3CBE4A2AC3E9411426F630; }; - 8BAE4D8EA7F247DA0A4D3A5C = { isa = PBXBuildFile; fileRef = F617CE0630ADB0628A34D6BF; }; - 280FE650B3F02AD9E821EA37 = { isa = PBXBuildFile; fileRef = 832701705EC0EC9484F9D9C2; }; - 9950893AA82F86F1EEE55BED = { isa = PBXBuildFile; fileRef = D77EAC704C96F798B1C69A0D; }; - C2F198C7058FC1A88A600645 = { isa = PBXBuildFile; fileRef = B06694E3C7EB89E3DDEFCBD0; }; - A7C05B907BBCB4288FBC6428 = { isa = PBXBuildFile; fileRef = 194F6B951CBC3E8F897FB646; }; - 6B48E4B12BB56C2254F293DF = { isa = PBXBuildFile; fileRef = ABDE2EC87B925F50BA071DB2; }; - 7A7859C8F2DFDC8D80FE0F0E = { isa = PBXBuildFile; fileRef = 1B88189689F13B2A9FAEC6C8; }; - 5BD727176204D71F2E0F42CC = { isa = PBXBuildFile; fileRef = 5789E1F7A30240B839EF936D; }; - DA3D1949878344EAE971E9CF = { isa = PBXBuildFile; fileRef = 7FF9D1A9157D58AEC555D558; }; - 086FC650CA4A39161F5DC34A = { isa = PBXBuildFile; fileRef = 1D7AE967F4874BD12DFB964D; }; - 7192D99BD62492851CC34B39 = { isa = PBXBuildFile; fileRef = 8E44AB32AEDABC7E1D3FC49F; }; - 379C4FA4F9F4F856A245D8F1 = { isa = PBXBuildFile; fileRef = 296E0498784BF03FA18B164B; }; - A70571C45ECEB18061181367 = { isa = PBXBuildFile; fileRef = 6746790735D492AB157E5F26; }; - 7B65A9D3D6D5798649D90FA0 = { isa = PBXBuildFile; fileRef = EB49FFAB3424D162D2105B2D; }; - 257C8841AC7634499B0B3D0A = { isa = PBXBuildFile; fileRef = 1328E38A600B515CD2CFBB7A; }; - 85572197E35546BB69861758 = { isa = PBXBuildFile; fileRef = 41C18D8743BCACB15D27EE21; }; - 0E22757B983B4F600F1B7916 = { isa = PBXBuildFile; fileRef = 7D678D4FD5505D7FCE7DCC7F; }; - 1501CEE9D0FD3C1185F6413B = { isa = PBXBuildFile; fileRef = 169DB589B861F57CDF896A02; }; - FF1962A57973208A90330B3C = { isa = PBXBuildFile; fileRef = F3EFF63CFFCCA76AF4968B4C; }; - E2DFFAAE26E2D87AE3CE3136 = { isa = PBXBuildFile; fileRef = 70EEB7CC13CCB14848F9058D; }; - 0F780301B225C3022C346CD4 = { isa = PBXBuildFile; fileRef = 95587D99F55802DE5AA2EE5D; }; - 59B173809CEC75EC0C74D1CF = { isa = PBXBuildFile; fileRef = 62DCA8C33F575DDA296DC682; }; - 69CA42E334E4BA09E4FE8B65 = { isa = PBXBuildFile; fileRef = D02830A908A07FD46F7387DA; }; - 0C3A85F58C34FA91D16664EB = { isa = PBXBuildFile; fileRef = 933DADF4F3906510EA714CC0; }; - 08C0959668FFC1A90B4BA8E6 = { isa = PBXBuildFile; fileRef = DD6476FF0F8BE833CD54C01F; }; - 1457A52734BA97A13610ECF1 = { isa = PBXBuildFile; fileRef = 268B4FFB1C675B679138545F; }; - 20EDB5C810855EB960F520FC = { isa = PBXBuildFile; fileRef = 60A217F62952DE8A752BD79F; }; - 55A5264E336AEDD1495796F5 = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioToolbox.framework; path = System/Library/Frameworks/AudioToolbox.framework; sourceTree = SDKROOT; }; - 43A5218D223AA21E0A55D986 = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Carbon.framework; path = System/Library/Frameworks/Carbon.framework; sourceTree = SDKROOT; }; - 046FA2877C08618339161EE2 = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = System/Library/Frameworks/Cocoa.framework; sourceTree = SDKROOT; }; - B36C44190E6AEEBFA3DB3046 = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreAudio.framework; path = System/Library/Frameworks/CoreAudio.framework; sourceTree = SDKROOT; }; - FB3773F08466794F949B0AFF = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreMIDI.framework; path = System/Library/Frameworks/CoreMIDI.framework; sourceTree = SDKROOT; }; - A5A4B15B9F5C3D32C82DFDC6 = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = DiscRecording.framework; path = System/Library/Frameworks/DiscRecording.framework; sourceTree = SDKROOT; }; - 151135F18422E2B1368D7BC2 = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = IOKit.framework; path = System/Library/Frameworks/IOKit.framework; sourceTree = SDKROOT; }; - 6E1144678BD61868D73EF1FB = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGL.framework; path = System/Library/Frameworks/OpenGL.framework; sourceTree = SDKROOT; }; - 2767E1D082874D301D5D5F43 = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QTKit.framework; path = System/Library/Frameworks/QTKit.framework; sourceTree = SDKROOT; }; - 23CF69B4C644D1E6E61E5C82 = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = System/Library/Frameworks/QuartzCore.framework; sourceTree = SDKROOT; }; - D9FB1A5365FEEB854A0FF7BF = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuickTime.framework; path = System/Library/Frameworks/QuickTime.framework; sourceTree = SDKROOT; }; - 74125C6A6DE28C538A518C3C = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = WebKit.framework; path = System/Library/Frameworks/WebKit.framework; sourceTree = SDKROOT; }; - 12E1601866B3489844AFD645 = { isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Introjucer.app; sourceTree = "BUILT_PRODUCTS_DIR"; }; - F4C5CF1AA7EB9298043D89D3 = { isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = Info.plist; path = Info.plist; sourceTree = "SOURCE_ROOT"; }; - 3417A0C1AE7900A7E07C1CA1 = { isa = PBXFileReference; lastKnownFileType = file.icns; name = Icon.icns; path = Icon.icns; sourceTree = "SOURCE_ROOT"; }; - 2CB488FB81118B62A06AA82B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_Application.h"; path = "../../Source/Application/jucer_Application.h"; sourceTree = "SOURCE_ROOT"; }; - 6B373B89AA84EBE5964C7452 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_CommandIDs.h"; path = "../../Source/Application/jucer_CommandIDs.h"; sourceTree = "SOURCE_ROOT"; }; - D759DE26060A86B38AECF753 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_CommonHeaders.h"; path = "../../Source/Application/jucer_CommonHeaders.h"; sourceTree = "SOURCE_ROOT"; }; - AA3CBE4A2AC3E9411426F630 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_DocumentEditorComponent.cpp"; path = "../../Source/Application/jucer_DocumentEditorComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - 16551C20AF0BE36C0BFC6E96 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_DocumentEditorComponent.h"; path = "../../Source/Application/jucer_DocumentEditorComponent.h"; sourceTree = "SOURCE_ROOT"; }; - F617CE0630ADB0628A34D6BF = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_FilePreviewComponent.cpp"; path = "../../Source/Application/jucer_FilePreviewComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - 330CB15608DEAF19D28C18DD = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_FilePreviewComponent.h"; path = "../../Source/Application/jucer_FilePreviewComponent.h"; sourceTree = "SOURCE_ROOT"; }; - 0CA0CCCEBFA0AC8C577FC915 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_Headers.h"; path = "../../Source/jucer_Headers.h"; sourceTree = "SOURCE_ROOT"; }; - 832701705EC0EC9484F9D9C2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_JuceUpdater.cpp"; path = "../../Source/Application/jucer_JuceUpdater.cpp"; sourceTree = "SOURCE_ROOT"; }; - AFC2F9A887CDBF7A0051CD09 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_JuceUpdater.h"; path = "../../Source/Application/jucer_JuceUpdater.h"; sourceTree = "SOURCE_ROOT"; }; - D77EAC704C96F798B1C69A0D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_Main.cpp"; path = "../../Source/Application/jucer_Main.cpp"; sourceTree = "SOURCE_ROOT"; }; - B06694E3C7EB89E3DDEFCBD0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_MainWindow.cpp"; path = "../../Source/Application/jucer_MainWindow.cpp"; sourceTree = "SOURCE_ROOT"; }; - 24378294003DC2D038D0534D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_MainWindow.h"; path = "../../Source/Application/jucer_MainWindow.h"; sourceTree = "SOURCE_ROOT"; }; - 194F6B951CBC3E8F897FB646 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_OpenDocumentManager.cpp"; path = "../../Source/Application/jucer_OpenDocumentManager.cpp"; sourceTree = "SOURCE_ROOT"; }; - CC2337E5F0207DA53F021F9F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_OpenDocumentManager.h"; path = "../../Source/Application/jucer_OpenDocumentManager.h"; sourceTree = "SOURCE_ROOT"; }; - ABDE2EC87B925F50BA071DB2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_SourceCodeEditor.cpp"; path = "../../Source/Code Editor/jucer_SourceCodeEditor.cpp"; sourceTree = "SOURCE_ROOT"; }; - DDBF5BEEBBD9314DDF866F29 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_SourceCodeEditor.h"; path = "../../Source/Code Editor/jucer_SourceCodeEditor.h"; sourceTree = "SOURCE_ROOT"; }; - 1B88189689F13B2A9FAEC6C8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_GroupInformationComponent.cpp"; path = "../../Source/Project/jucer_GroupInformationComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - 9B3084628EA1494464E99F5C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_GroupInformationComponent.h"; path = "../../Source/Project/jucer_GroupInformationComponent.h"; sourceTree = "SOURCE_ROOT"; }; - 5789E1F7A30240B839EF936D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_NewFileWizard.cpp"; path = "../../Source/Project/jucer_NewFileWizard.cpp"; sourceTree = "SOURCE_ROOT"; }; - 0685E1C942E1D2447CADB783 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_NewFileWizard.h"; path = "../../Source/Project/jucer_NewFileWizard.h"; sourceTree = "SOURCE_ROOT"; }; - 7FF9D1A9157D58AEC555D558 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_NewProjectWizard.cpp"; path = "../../Source/Project/jucer_NewProjectWizard.cpp"; sourceTree = "SOURCE_ROOT"; }; - 7ACDFA50C230966293626A74 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_NewProjectWizard.h"; path = "../../Source/Project/jucer_NewProjectWizard.h"; sourceTree = "SOURCE_ROOT"; }; - 1D7AE967F4874BD12DFB964D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_Project.cpp"; path = "../../Source/Project/jucer_Project.cpp"; sourceTree = "SOURCE_ROOT"; }; - 8CD4ABA478205AA127FB9BE1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_Project.h"; path = "../../Source/Project/jucer_Project.h"; sourceTree = "SOURCE_ROOT"; }; - 8E44AB32AEDABC7E1D3FC49F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_ProjectContentComponent.cpp"; path = "../../Source/Project/jucer_ProjectContentComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - F2F98DA41146390D05A44EAD = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_ProjectContentComponent.h"; path = "../../Source/Project/jucer_ProjectContentComponent.h"; sourceTree = "SOURCE_ROOT"; }; - AB9EE4734D894FBF1CF62C5F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_ProjectExport_Android.h"; path = "../../Source/Project/jucer_ProjectExport_Android.h"; sourceTree = "SOURCE_ROOT"; }; - 889715B0152919B2EAA1F5F9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_ProjectExport_Make.h"; path = "../../Source/Project/jucer_ProjectExport_Make.h"; sourceTree = "SOURCE_ROOT"; }; - 907F302BB89308CDB2C5FD0E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_ProjectExport_MSVC.h"; path = "../../Source/Project/jucer_ProjectExport_MSVC.h"; sourceTree = "SOURCE_ROOT"; }; - D250274734D729D2E0389A20 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_ProjectExport_XCode.h"; path = "../../Source/Project/jucer_ProjectExport_XCode.h"; sourceTree = "SOURCE_ROOT"; }; - 296E0498784BF03FA18B164B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_ProjectExporter.cpp"; path = "../../Source/Project/jucer_ProjectExporter.cpp"; sourceTree = "SOURCE_ROOT"; }; - 5DE419991013E7C0F203E99F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_ProjectExporter.h"; path = "../../Source/Project/jucer_ProjectExporter.h"; sourceTree = "SOURCE_ROOT"; }; - 6746790735D492AB157E5F26 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_ProjectInformationComponent.cpp"; path = "../../Source/Project/jucer_ProjectInformationComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; - 4727C2C16D17BE642A3F5838 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_ProjectInformationComponent.h"; path = "../../Source/Project/jucer_ProjectInformationComponent.h"; sourceTree = "SOURCE_ROOT"; }; - ADF962F14A1FCBB05B499E6C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_ProjectSaver.h"; path = "../../Source/Project/jucer_ProjectSaver.h"; sourceTree = "SOURCE_ROOT"; }; - EB49FFAB3424D162D2105B2D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_ProjectTreeViewBase.cpp"; path = "../../Source/Project/jucer_ProjectTreeViewBase.cpp"; sourceTree = "SOURCE_ROOT"; }; - 27D0B6991943D6AD88E42FE5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_ProjectTreeViewBase.h"; path = "../../Source/Project/jucer_ProjectTreeViewBase.h"; sourceTree = "SOURCE_ROOT"; }; - 1328E38A600B515CD2CFBB7A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_ProjectType.cpp"; path = "../../Source/Project/jucer_ProjectType.cpp"; sourceTree = "SOURCE_ROOT"; }; - D39F212C819794FECD373008 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_ProjectType.h"; path = "../../Source/Project/jucer_ProjectType.h"; sourceTree = "SOURCE_ROOT"; }; - 41C18D8743BCACB15D27EE21 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_ResourceFile.cpp"; path = "../../Source/Project/jucer_ResourceFile.cpp"; sourceTree = "SOURCE_ROOT"; }; - 05564317BD19EBC8416976DD = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_ResourceFile.h"; path = "../../Source/Project/jucer_ResourceFile.h"; sourceTree = "SOURCE_ROOT"; }; - 7D678D4FD5505D7FCE7DCC7F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_TreeViewTypes.cpp"; path = "../../Source/Project/jucer_TreeViewTypes.cpp"; sourceTree = "SOURCE_ROOT"; }; - 9B52E45930E312EAEB0BD7EC = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_TreeViewTypes.h"; path = "../../Source/Project/jucer_TreeViewTypes.h"; sourceTree = "SOURCE_ROOT"; }; - 169DB589B861F57CDF896A02 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_CodeHelpers.cpp"; path = "../../Source/Utility/jucer_CodeHelpers.cpp"; sourceTree = "SOURCE_ROOT"; }; - 39F23D96AE478A6415104D1E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_CodeHelpers.h"; path = "../../Source/Utility/jucer_CodeHelpers.h"; sourceTree = "SOURCE_ROOT"; }; - 54BAA8A58EF125AEF05BC8F4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_Colours.h"; path = "../../Source/Utility/jucer_Colours.h"; sourceTree = "SOURCE_ROOT"; }; - F3EFF63CFFCCA76AF4968B4C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_FileHelpers.cpp"; path = "../../Source/Utility/jucer_FileHelpers.cpp"; sourceTree = "SOURCE_ROOT"; }; - D5825A552212550315F68745 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_FileHelpers.h"; path = "../../Source/Utility/jucer_FileHelpers.h"; sourceTree = "SOURCE_ROOT"; }; - 70EEB7CC13CCB14848F9058D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_JucerTreeViewBase.cpp"; path = "../../Source/Utility/jucer_JucerTreeViewBase.cpp"; sourceTree = "SOURCE_ROOT"; }; - F09282899E26D5AECB15FCD1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_JucerTreeViewBase.h"; path = "../../Source/Utility/jucer_JucerTreeViewBase.h"; sourceTree = "SOURCE_ROOT"; }; - 95587D99F55802DE5AA2EE5D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_MiscUtilities.cpp"; path = "../../Source/Utility/jucer_MiscUtilities.cpp"; sourceTree = "SOURCE_ROOT"; }; - C9D7F4B7778274154DB6F172 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_MiscUtilities.h"; path = "../../Source/Utility/jucer_MiscUtilities.h"; sourceTree = "SOURCE_ROOT"; }; - 6B90D9A6BD4332FB3F2F642B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_PresetIDs.h"; path = "../../Source/Utility/jucer_PresetIDs.h"; sourceTree = "SOURCE_ROOT"; }; - D8A7CD36545F7361B078939D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_RelativePath.h"; path = "../../Source/Utility/jucer_RelativePath.h"; sourceTree = "SOURCE_ROOT"; }; - 62DCA8C33F575DDA296DC682 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_StoredSettings.cpp"; path = "../../Source/Utility/jucer_StoredSettings.cpp"; sourceTree = "SOURCE_ROOT"; }; - 66AB2C4A43AC1C473C3694D0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_StoredSettings.h"; path = "../../Source/Utility/jucer_StoredSettings.h"; sourceTree = "SOURCE_ROOT"; }; - EAFDFAC2EE4670D18E0D35FA = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_ValueSourceHelpers.h"; path = "../../Source/Utility/jucer_ValueSourceHelpers.h"; sourceTree = "SOURCE_ROOT"; }; - 8EDEE4F2A25D08F06768BAB3 = { isa = PBXFileReference; lastKnownFileType = text.txt; name = AudioPluginXCodeScript.txt; path = ../../Source/BinaryData/AudioPluginXCodeScript.txt; sourceTree = "SOURCE_ROOT"; }; - 4872570002B53A0B1B1152A2 = { isa = PBXFileReference; lastKnownFileType = image.png; name = "brushed_aluminium.png"; path = "../../Source/BinaryData/brushed_aluminium.png"; sourceTree = "SOURCE_ROOT"; }; - 5927BCB4F87ABEAF17A4C81A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_AudioPluginEditorTemplate.cpp"; path = "../../Source/BinaryData/jucer_AudioPluginEditorTemplate.cpp"; sourceTree = "SOURCE_ROOT"; }; - C48BBF375EA50F69E0CFE858 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_AudioPluginEditorTemplate.h"; path = "../../Source/BinaryData/jucer_AudioPluginEditorTemplate.h"; sourceTree = "SOURCE_ROOT"; }; - 76FF5CCA95D7A1EE97B3A44F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_AudioPluginFilterTemplate.cpp"; path = "../../Source/BinaryData/jucer_AudioPluginFilterTemplate.cpp"; sourceTree = "SOURCE_ROOT"; }; - 20C0F2CB6B03852C1141DAED = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_AudioPluginFilterTemplate.h"; path = "../../Source/BinaryData/jucer_AudioPluginFilterTemplate.h"; sourceTree = "SOURCE_ROOT"; }; - 3B6D17F807BC5134D6A1867A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_MainConsoleAppTemplate.cpp"; path = "../../Source/BinaryData/jucer_MainConsoleAppTemplate.cpp"; sourceTree = "SOURCE_ROOT"; }; - 573797C31A561745B6CD1833 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_MainTemplate.cpp"; path = "../../Source/BinaryData/jucer_MainTemplate.cpp"; sourceTree = "SOURCE_ROOT"; }; - 80F03F2D4AB3387283A65A0B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_NewCppFileTemplate.cpp"; path = "../../Source/BinaryData/jucer_NewCppFileTemplate.cpp"; sourceTree = "SOURCE_ROOT"; }; - FC705812CC19B07DEDA6EBF2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_NewCppFileTemplate.h"; path = "../../Source/BinaryData/jucer_NewCppFileTemplate.h"; sourceTree = "SOURCE_ROOT"; }; - B4F88060202011416CB3278B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_WindowTemplate.cpp"; path = "../../Source/BinaryData/jucer_WindowTemplate.cpp"; sourceTree = "SOURCE_ROOT"; }; - 1C26D9DA0B2D0FF8F2CEC721 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_WindowTemplate.h"; path = "../../Source/BinaryData/jucer_WindowTemplate.h"; sourceTree = "SOURCE_ROOT"; }; - 31B5EB3CEA43BE4B473DCC85 = { isa = PBXFileReference; lastKnownFileType = image.png; name = "juce_icon.png"; path = "../../Source/BinaryData/juce_icon.png"; sourceTree = "SOURCE_ROOT"; }; - C86084A495B96EA215958914 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AppConfig.h; path = ../../JuceLibraryCode/AppConfig.h; sourceTree = "SOURCE_ROOT"; }; - D02830A908A07FD46F7387DA = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = BinaryData.cpp; path = ../../JuceLibraryCode/BinaryData.cpp; sourceTree = "SOURCE_ROOT"; }; - A6A79D303B85B7C9D673ECD5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = BinaryData.h; path = ../../JuceLibraryCode/BinaryData.h; sourceTree = "SOURCE_ROOT"; }; - 8FEC5B519774920289A1FD73 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = JuceHeader.h; path = ../../JuceLibraryCode/JuceHeader.h; sourceTree = "SOURCE_ROOT"; }; - 933DADF4F3906510EA714CC0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = JuceLibraryCode1.mm; path = ../../JuceLibraryCode/JuceLibraryCode1.mm; sourceTree = "SOURCE_ROOT"; }; - DD6476FF0F8BE833CD54C01F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = JuceLibraryCode2.mm; path = ../../JuceLibraryCode/JuceLibraryCode2.mm; sourceTree = "SOURCE_ROOT"; }; - 268B4FFB1C675B679138545F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = JuceLibraryCode3.mm; path = ../../JuceLibraryCode/JuceLibraryCode3.mm; sourceTree = "SOURCE_ROOT"; }; - 60A217F62952DE8A752BD79F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = JuceLibraryCode4.mm; path = ../../JuceLibraryCode/JuceLibraryCode4.mm; sourceTree = "SOURCE_ROOT"; }; - 65EDE353CFC4C222043C80AB = { isa = PBXGroup; children = ( - 2CB488FB81118B62A06AA82B, - 6B373B89AA84EBE5964C7452, - D759DE26060A86B38AECF753, - AA3CBE4A2AC3E9411426F630, - 16551C20AF0BE36C0BFC6E96, - F617CE0630ADB0628A34D6BF, - 330CB15608DEAF19D28C18DD, - 0CA0CCCEBFA0AC8C577FC915, - 832701705EC0EC9484F9D9C2, - AFC2F9A887CDBF7A0051CD09, - D77EAC704C96F798B1C69A0D, - B06694E3C7EB89E3DDEFCBD0, - 24378294003DC2D038D0534D, - 194F6B951CBC3E8F897FB646, - CC2337E5F0207DA53F021F9F ); name = Application; sourceTree = ""; }; - 644797EB12AAB2529ED6786E = { isa = PBXGroup; children = ( - ABDE2EC87B925F50BA071DB2, - DDBF5BEEBBD9314DDF866F29 ); name = "Code Editor"; sourceTree = ""; }; - 38883F6AABCF4D47FC02B11F = { isa = PBXGroup; children = ( - 1B88189689F13B2A9FAEC6C8, - 9B3084628EA1494464E99F5C, - 5789E1F7A30240B839EF936D, - 0685E1C942E1D2447CADB783, - 7FF9D1A9157D58AEC555D558, - 7ACDFA50C230966293626A74, - 1D7AE967F4874BD12DFB964D, - 8CD4ABA478205AA127FB9BE1, - 8E44AB32AEDABC7E1D3FC49F, - F2F98DA41146390D05A44EAD, - AB9EE4734D894FBF1CF62C5F, - 889715B0152919B2EAA1F5F9, - 907F302BB89308CDB2C5FD0E, - D250274734D729D2E0389A20, - 296E0498784BF03FA18B164B, - 5DE419991013E7C0F203E99F, - 6746790735D492AB157E5F26, - 4727C2C16D17BE642A3F5838, - ADF962F14A1FCBB05B499E6C, - EB49FFAB3424D162D2105B2D, - 27D0B6991943D6AD88E42FE5, - 1328E38A600B515CD2CFBB7A, - D39F212C819794FECD373008, - 41C18D8743BCACB15D27EE21, - 05564317BD19EBC8416976DD, - 7D678D4FD5505D7FCE7DCC7F, - 9B52E45930E312EAEB0BD7EC ); name = Project; sourceTree = ""; }; - EB77B261C62447EE22D136DD = { isa = PBXGroup; children = ( - 169DB589B861F57CDF896A02, - 39F23D96AE478A6415104D1E, - 54BAA8A58EF125AEF05BC8F4, - F3EFF63CFFCCA76AF4968B4C, - D5825A552212550315F68745, - 70EEB7CC13CCB14848F9058D, - F09282899E26D5AECB15FCD1, - 95587D99F55802DE5AA2EE5D, - C9D7F4B7778274154DB6F172, - 6B90D9A6BD4332FB3F2F642B, - D8A7CD36545F7361B078939D, - 62DCA8C33F575DDA296DC682, - 66AB2C4A43AC1C473C3694D0, - EAFDFAC2EE4670D18E0D35FA ); name = Utility; sourceTree = ""; }; - 2436CB32D02E7E3293665601 = { isa = PBXGroup; children = ( - 8EDEE4F2A25D08F06768BAB3, - 4872570002B53A0B1B1152A2, - 5927BCB4F87ABEAF17A4C81A, - C48BBF375EA50F69E0CFE858, - 76FF5CCA95D7A1EE97B3A44F, - 20C0F2CB6B03852C1141DAED, - 3B6D17F807BC5134D6A1867A, - 573797C31A561745B6CD1833, - 80F03F2D4AB3387283A65A0B, - FC705812CC19B07DEDA6EBF2, - B4F88060202011416CB3278B, - 1C26D9DA0B2D0FF8F2CEC721, - 31B5EB3CEA43BE4B473DCC85 ); name = BinaryData; sourceTree = ""; }; - B01AA6CC1327A5DBCB35B7BF = { isa = PBXGroup; children = ( - 65EDE353CFC4C222043C80AB, - 644797EB12AAB2529ED6786E, - 38883F6AABCF4D47FC02B11F, - EB77B261C62447EE22D136DD, - 2436CB32D02E7E3293665601 ); name = "The Introjucer"; sourceTree = ""; }; - 265749F75DBA86EC3F19FE34 = { isa = PBXGroup; children = ( - C86084A495B96EA215958914, - D02830A908A07FD46F7387DA, - A6A79D303B85B7C9D673ECD5, - 8FEC5B519774920289A1FD73, - 933DADF4F3906510EA714CC0, - DD6476FF0F8BE833CD54C01F, - 268B4FFB1C675B679138545F, - 60A217F62952DE8A752BD79F ); name = "Juce Library Code"; sourceTree = ""; }; - EAC5B9DBB227CB2A002EF355 = { isa = PBXGroup; children = ( - F4C5CF1AA7EB9298043D89D3, - 3417A0C1AE7900A7E07C1CA1 ); name = Resources; sourceTree = ""; }; - 0D737FA088906E13707BAEB7 = { isa = PBXGroup; children = ( - 55A5264E336AEDD1495796F5, - 43A5218D223AA21E0A55D986, - 046FA2877C08618339161EE2, - B36C44190E6AEEBFA3DB3046, - FB3773F08466794F949B0AFF, - A5A4B15B9F5C3D32C82DFDC6, - 151135F18422E2B1368D7BC2, - 6E1144678BD61868D73EF1FB, - 2767E1D082874D301D5D5F43, - 23CF69B4C644D1E6E61E5C82, - D9FB1A5365FEEB854A0FF7BF, - 74125C6A6DE28C538A518C3C ); name = Frameworks; sourceTree = ""; }; - 18794C3CE7D0C95A5A70F213 = { isa = PBXGroup; children = ( - 12E1601866B3489844AFD645 ); name = Products; sourceTree = ""; }; - F03291953F0A7EA46599E27B = { isa = PBXGroup; children = ( - B01AA6CC1327A5DBCB35B7BF, - 265749F75DBA86EC3F19FE34, - EAC5B9DBB227CB2A002EF355, - 0D737FA088906E13707BAEB7, - 18794C3CE7D0C95A5A70F213 ); name = Source; sourceTree = ""; }; - DD9313457B3248E7646270A4 = { isa = XCBuildConfiguration; buildSettings = { - PREBINDING = NO; - HEADER_SEARCH_PATHS = " $(inherited)"; + 1E76E36772355E2A43CF4961 = { isa = PBXBuildFile; fileRef = D00F311BFC3C2625C457CB9B; }; + 241F29FCBB7A17BB44A0B10C = { isa = PBXBuildFile; fileRef = D1F9B0E9F5D54FE48BEB46EA; }; + 49C22786B54C5DC94E4654B8 = { isa = PBXBuildFile; fileRef = E96597BBC6A98255B51B94DC; }; + 11D42F7EC6E6539D79A7F4B1 = { isa = PBXBuildFile; fileRef = E5D6C36496F5BC84D7213BE8; }; + B980464FA2761CCD64B1FAD6 = { isa = PBXBuildFile; fileRef = CF6C8BD0DA3D8CD4E99EBADA; }; + 1321E6C1C6170B6C898AD09D = { isa = PBXBuildFile; fileRef = 951128CA33CCDEF570436B1C; }; + 954A036F5DDB375DB23FFB3E = { isa = PBXBuildFile; fileRef = 0400CB0E056A1D840304D2DE; }; + 3EB3D569250C4BA4CA9AF578 = { isa = PBXBuildFile; fileRef = C7608A3967D9AB9481848F2B; }; + 9A4D477F1924C31A52AF5C79 = { isa = PBXBuildFile; fileRef = F2FA27430D90E92F0C9EBEDF; }; + B1A786B525176BEE309998EA = { isa = PBXBuildFile; fileRef = BE94248CF8069E6707174CDB; }; + 95B44E6C74B1DED31DBE37EB = { isa = PBXBuildFile; fileRef = 8C52A3DDA62A746AA7A68535; }; + AA9D0B8E23F3D87A23DE9F8A = { isa = PBXBuildFile; fileRef = 9069981E414A631B036CC9AC; }; + 244BA1BDA5FAA465EA3F9C6D = { isa = PBXBuildFile; fileRef = 2247EE920DF0610CAF9F4513; }; + 349B4C837D996E71E08657A5 = { isa = PBXBuildFile; fileRef = 6FA01AEDB9DB70FD1EA6D380; }; + 3FCA61C401007B243E2E9035 = { isa = PBXBuildFile; fileRef = F797071D88542C813CF7222A; }; + 5BC89E7905397ABECD25ACCD = { isa = PBXBuildFile; fileRef = F1163B7856FDABA413A88D90; }; + FBE57B26FE59319AA2E8B59D = { isa = PBXBuildFile; fileRef = 69A5D13490A62DAE9A7D5A22; }; + 30B921C38DCEE787B294B746 = { isa = PBXBuildFile; fileRef = BAC43B20E14A340CCF14119C; }; + 676D2E1E750E61AA2FAA335E = { isa = PBXBuildFile; fileRef = 86E468DE6556BB2AD76A3D80; }; + BB1D52AE45F40BEDCEBC993F = { isa = PBXBuildFile; fileRef = ADDCB0920D467DF2A309A5E3; }; + 9CBD0A9A700D28081C8182C5 = { isa = PBXBuildFile; fileRef = 4BAF0975F0958432B17D0D41; }; + 8012E6487639A7368E4C4470 = { isa = PBXBuildFile; fileRef = E70CA21960A64CCB835725FF; }; + B18DEBB2CBB335AFAE249E8E = { isa = PBXBuildFile; fileRef = F94ACCC426AB439B871699E3; }; + 1F37544891EC8DBB5E500C1C = { isa = PBXBuildFile; fileRef = F71AF6D2DF3E652F8B51EBAB; }; + 110221CD5578153B528AD2BE = { isa = PBXBuildFile; fileRef = D10D51A0A2D63F38B4D86A60; }; + CD4F7B119CE718BCE78D61F4 = { isa = PBXBuildFile; fileRef = 9B9CAD20E1243B4351B4C8D8; }; + 78CB463DD98A55313A543859 = { isa = PBXBuildFile; fileRef = 1729AEDC34001C31B8CC357C; }; + 123810DAF8AF758928916ECE = { isa = PBXBuildFile; fileRef = 47DD50A5A9091F9900E0EAD9; }; + C9F11BA62D6D092A300363F7 = { isa = PBXBuildFile; fileRef = 0F249640243FBD5717F6ADD9; }; + F6635694A01FFBF5EF0968DB = { isa = PBXBuildFile; fileRef = 631983AA62673015F8D7453B; }; + FCE6F604C00039A32649CB69 = { isa = PBXBuildFile; fileRef = 2E680E2C65684A4272AE079A; }; + 3C5267E06A897B0DC0F7EA50 = { isa = PBXBuildFile; fileRef = 472F9A90F685220D730EBF6C; }; + 7E72CB84146E1B4B168356CA = { isa = PBXBuildFile; fileRef = 38F29C2049566C47993A6D92; }; + 24AE6B973834AF7E0DE1F228 = { isa = PBXBuildFile; fileRef = D53B54D1786A1FFC024BF064; }; + AF55472121E1C56E5EB9CB4B = { isa = PBXBuildFile; fileRef = D9E59DE07A815AB303A297D9; }; + 284EBBCCB7C9FCB23BE43971 = { isa = PBXBuildFile; fileRef = 56E24241C02F953589493551; }; + EF27EC7543BED0B8DD66A098 = { isa = PBXBuildFile; fileRef = A2A081D9DA35B3D1F183C3FE; }; + 756B48DA5FA991E74035E812 = { isa = PBXBuildFile; fileRef = 70DC1D288DC6503E628A5A03; }; + 81E6980930B09FF108123186 = { isa = PBXBuildFile; fileRef = 9539EC08D70D4719A89A4A30; }; + 001730671DD492F405B37778 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_GZIPDecompressorInputStream.h"; path = "../../../../modules/juce_core/zip/juce_GZIPDecompressorInputStream.h"; sourceTree = "SOURCE_ROOT"; }; + 0019A20E8A7B6B383B6ADE26 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MarkerList.cpp"; path = "../../../../modules/juce_gui_basics/positioning/juce_MarkerList.cpp"; sourceTree = "SOURCE_ROOT"; }; + 00376BD04FB81AF9455D45EB = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileInputSource.cpp"; path = "../../../../modules/juce_core/streams/juce_FileInputSource.cpp"; sourceTree = "SOURCE_ROOT"; }; + 003CA65912AC8048759478F9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DrawablePath.cpp"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawablePath.cpp"; sourceTree = "SOURCE_ROOT"; }; + 0075C5208947159AF2802F3B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_AudioPluginEditorTemplate.cpp"; path = "../../Source/BinaryData/jucer_AudioPluginEditorTemplate.cpp"; sourceTree = "SOURCE_ROOT"; }; + 00EFEF8A403F4EC9E4D5B7D5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FillType.cpp"; path = "../../../../modules/juce_graphics/colour/juce_FillType.cpp"; sourceTree = "SOURCE_ROOT"; }; + 025C33B85E0CCD3E238D4BDC = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LocalisedStrings.h"; path = "../../../../modules/juce_core/text/juce_LocalisedStrings.h"; sourceTree = "SOURCE_ROOT"; }; + 02C516CEFEE3FE48B492FDC9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Typeface.cpp"; path = "../../../../modules/juce_graphics/fonts/juce_Typeface.cpp"; sourceTree = "SOURCE_ROOT"; }; + 02DDC84BAB18E091E2CE8CB3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileLogger.h"; path = "../../../../modules/juce_core/logging/juce_FileLogger.h"; sourceTree = "SOURCE_ROOT"; }; + 03D3053EDE47FED1919C6674 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_AudioPluginFilterTemplate.h"; path = "../../Source/BinaryData/jucer_AudioPluginFilterTemplate.h"; sourceTree = "SOURCE_ROOT"; }; + 0400CB0E056A1D840304D2DE = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_CommandLine.cpp"; path = "../../Source/Application/jucer_CommandLine.cpp"; sourceTree = "SOURCE_ROOT"; }; + 0411DD6D48DBCEBAA51BEE49 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileChooser.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileChooser.h"; sourceTree = "SOURCE_ROOT"; }; + 045B9C5D21C5C86FED140D81 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_mac_CoreGraphicsHelpers.h"; path = "../../../../modules/juce_graphics/native/juce_mac_CoreGraphicsHelpers.h"; sourceTree = "SOURCE_ROOT"; }; + 0473C3BCB7A43F710B8EE36C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MACAddress.h"; path = "../../../../modules/juce_core/network/juce_MACAddress.h"; sourceTree = "SOURCE_ROOT"; }; + 04960EE443D073F4CB7121FB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ToolbarItemFactory.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_ToolbarItemFactory.h"; sourceTree = "SOURCE_ROOT"; }; + 04F31392CA58A2A434CFF7FA = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_LowLevelGraphicsPostScriptRenderer.cpp"; path = "../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsPostScriptRenderer.cpp"; sourceTree = "SOURCE_ROOT"; }; + 04F670E070D31FB66C7DCAEB = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_LocalisedStrings.cpp"; path = "../../../../modules/juce_core/text/juce_LocalisedStrings.cpp"; sourceTree = "SOURCE_ROOT"; }; + 05076CDF1511A5F8A8E18F1D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_ProjectExport_Make.h"; path = "../../Source/Project Saving/jucer_ProjectExport_Make.h"; sourceTree = "SOURCE_ROOT"; }; + 050D2D209E6423528D0138F7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ImagePreviewComponent.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_ImagePreviewComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 051D4EAC1602802E97B24A12 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MemoryInputStream.h"; path = "../../../../modules/juce_core/streams/juce_MemoryInputStream.h"; sourceTree = "SOURCE_ROOT"; }; + 05C936573E73B8AACBDF3191 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DrawableRectangle.cpp"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawableRectangle.cpp"; sourceTree = "SOURCE_ROOT"; }; + 05EEE241CC0DF57A7BE86C29 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_Files.mm"; path = "../../../../modules/juce_core/native/juce_mac_Files.mm"; sourceTree = "SOURCE_ROOT"; }; + 06411E446478986E7E65FE6B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ShapeButton.h"; path = "../../../../modules/juce_gui_basics/buttons/juce_ShapeButton.h"; sourceTree = "SOURCE_ROOT"; }; + 07EF1095F6D45A29AF2A6B6F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileBrowserListener.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileBrowserListener.h"; sourceTree = "SOURCE_ROOT"; }; + 0819B9CBFBA5F410C41C978A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FilenameComponent.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FilenameComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 087959CCC447DA59FBD5787E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_WindowTemplate.cpp"; path = "../../Source/BinaryData/jucer_WindowTemplate.cpp"; sourceTree = "SOURCE_ROOT"; }; + 08ADF7FC9BBE70F3C8186215 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ComponentListener.h"; path = "../../../../modules/juce_gui_basics/components/juce_ComponentListener.h"; sourceTree = "SOURCE_ROOT"; }; + 08D19EE7C17DCED7E7BBEEE7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileInputStream.cpp"; path = "../../../../modules/juce_core/files/juce_FileInputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; + 0906A934A2797145A64FF423 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TooltipWindow.cpp"; path = "../../../../modules/juce_gui_basics/windows/juce_TooltipWindow.cpp"; sourceTree = "SOURCE_ROOT"; }; + 09349C0C8300CA414AAE93A0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_CPlusPlusCodeTokeniser.cpp"; path = "../../../../modules/juce_gui_extra/code_editor/juce_CPlusPlusCodeTokeniser.cpp"; sourceTree = "SOURCE_ROOT"; }; + 09697D1C3F7B90DD33A8090E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_SystemStats.mm"; path = "../../../../modules/juce_core/native/juce_mac_SystemStats.mm"; sourceTree = "SOURCE_ROOT"; }; + 0B96A219A0CFF707E5A13B68 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_Fonts.mm"; path = "../../../../modules/juce_graphics/native/juce_mac_Fonts.mm"; sourceTree = "SOURCE_ROOT"; }; + 0BDFA0E402BA7E6B366E953C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ScrollBar.h"; path = "../../../../modules/juce_gui_basics/layout/juce_ScrollBar.h"; sourceTree = "SOURCE_ROOT"; }; + 0BEDB3FD70AB61D3E7891D74 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ComponentListener.cpp"; path = "../../../../modules/juce_gui_basics/components/juce_ComponentListener.cpp"; sourceTree = "SOURCE_ROOT"; }; + 0C747328CDADAE15E86E5E93 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_FileChooser.mm"; path = "../../../../modules/juce_gui_basics/native/juce_mac_FileChooser.mm"; sourceTree = "SOURCE_ROOT"; }; + 0C956209A61542371A7A5257 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Colour.h"; path = "../../../../modules/juce_graphics/colour/juce_Colour.h"; sourceTree = "SOURCE_ROOT"; }; + 0CC9026D5056CA9C1FE64A64 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ArrowButton.h"; path = "../../../../modules/juce_gui_basics/buttons/juce_ArrowButton.h"; sourceTree = "SOURCE_ROOT"; }; + 0CEF14D37EC664CA49A2B04D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ComponentPeer.cpp"; path = "../../../../modules/juce_gui_basics/windows/juce_ComponentPeer.cpp"; sourceTree = "SOURCE_ROOT"; }; + 0D100A1B27A72355323CB637 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Windowing.cpp"; path = "../../../../modules/juce_gui_basics/native/juce_win32_Windowing.cpp"; sourceTree = "SOURCE_ROOT"; }; + 0E80EFDB550393DB1C94F291 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Font.h"; path = "../../../../modules/juce_graphics/fonts/juce_Font.h"; sourceTree = "SOURCE_ROOT"; }; + 0F249640243FBD5717F6ADD9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_MiscUtilities.cpp"; path = "../../Source/Utility/jucer_MiscUtilities.cpp"; sourceTree = "SOURCE_ROOT"; }; + 0F2505BCD0232EB95D5199F2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Process.h"; path = "../../../../modules/juce_core/threads/juce_Process.h"; sourceTree = "SOURCE_ROOT"; }; + 0F382FC6B16658EF02D2C4F0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MessageListener.cpp"; path = "../../../../modules/juce_events/messages/juce_MessageListener.cpp"; sourceTree = "SOURCE_ROOT"; }; + 0FAA46FE4A661AC6F65896CE = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PathIterator.cpp"; path = "../../../../modules/juce_graphics/geometry/juce_PathIterator.cpp"; sourceTree = "SOURCE_ROOT"; }; + 0FC137539030B1A9152F680C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_MainTemplate.cpp"; path = "../../Source/BinaryData/jucer_MainTemplate.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1039ABBDCC86BDC9D2663017 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_XmlElement.h"; path = "../../../../modules/juce_core/xml/juce_XmlElement.h"; sourceTree = "SOURCE_ROOT"; }; + 1116222363E600327FC672A0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MessageManager.h"; path = "../../../../modules/juce_events/messages/juce_MessageManager.h"; sourceTree = "SOURCE_ROOT"; }; + 117B5BB797DEC16E103A08F0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MouseInputSource.cpp"; path = "../../../../modules/juce_gui_basics/mouse/juce_MouseInputSource.cpp"; sourceTree = "SOURCE_ROOT"; }; + 11C55B714FE5D7CAFC35A0C7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ImageEffectFilter.h"; path = "../../../../modules/juce_graphics/effects/juce_ImageEffectFilter.h"; sourceTree = "SOURCE_ROOT"; }; + 1241F3A1FCDF100CD75D5E78 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_DragAndDrop.cpp"; path = "../../../../modules/juce_gui_basics/native/juce_win32_DragAndDrop.cpp"; sourceTree = "SOURCE_ROOT"; }; + 125CD8A5E5B57840F5154ACD = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Viewport.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_Viewport.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1268E54178897254E9A8B94C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TextLayout.cpp"; path = "../../../../modules/juce_graphics/fonts/juce_TextLayout.cpp"; sourceTree = "SOURCE_ROOT"; }; + 129CDB26CC63D4BC2EB1F2CC = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PerformanceCounter.cpp"; path = "../../../../modules/juce_core/time/juce_PerformanceCounter.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1353717582E55D6E4D074BA5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Files.cpp"; path = "../../../../modules/juce_core/native/juce_win32_Files.cpp"; sourceTree = "SOURCE_ROOT"; }; + 138550CC958D2F029C01B4E7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_HyperlinkButton.cpp"; path = "../../../../modules/juce_gui_basics/buttons/juce_HyperlinkButton.cpp"; sourceTree = "SOURCE_ROOT"; }; + 139C8BAED6DCEE26652651B8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ApplicationBase.cpp"; path = "../../../../modules/juce_events/messages/juce_ApplicationBase.cpp"; sourceTree = "SOURCE_ROOT"; }; + 14337E3F4B92468517BA24AF = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_NamedPipe.cpp"; path = "../../../../modules/juce_core/network/juce_NamedPipe.cpp"; sourceTree = "SOURCE_ROOT"; }; + 143BB0407046E63639E1D79D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TextInputTarget.h"; path = "../../../../modules/juce_gui_basics/keyboard/juce_TextInputTarget.h"; sourceTree = "SOURCE_ROOT"; }; + 148FC834CE2CAE18477AB708 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_CaretComponent.cpp"; path = "../../../../modules/juce_gui_basics/keyboard/juce_CaretComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 14B7611971E56AC319072A5A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Font.cpp"; path = "../../../../modules/juce_graphics/fonts/juce_Font.cpp"; sourceTree = "SOURCE_ROOT"; }; + 14DCD95D4AFE5101B036A6EC = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TabbedComponent.h"; path = "../../../../modules/juce_gui_basics/layout/juce_TabbedComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 14EB1DA96BC8E4901FC953F6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ComponentPeer.h"; path = "../../../../modules/juce_gui_basics/windows/juce_ComponentPeer.h"; sourceTree = "SOURCE_ROOT"; }; + 14F096198DE1002BF2CC56EF = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DropShadower.cpp"; path = "../../../../modules/juce_gui_basics/misc/juce_DropShadower.cpp"; sourceTree = "SOURCE_ROOT"; }; + 157290445D39269EA81887A3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_win32_HiddenMessageWindow.h"; path = "../../../../modules/juce_events/native/juce_win32_HiddenMessageWindow.h"; sourceTree = "SOURCE_ROOT"; }; + 16017456A45F74C692A3AE45 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_SVGParser.cpp"; path = "../../../../modules/juce_gui_basics/drawables/juce_SVGParser.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1614411A8699B82D1F7B0346 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MemoryInputStream.cpp"; path = "../../../../modules/juce_core/streams/juce_MemoryInputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; + 168F5F32F673036DDAEF1D8D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Atomic.h"; path = "../../../../modules/juce_core/memory/juce_Atomic.h"; sourceTree = "SOURCE_ROOT"; }; + 1729AEDC34001C31B8CC357C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_FileHelpers.cpp"; path = "../../Source/Utility/jucer_FileHelpers.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1772B02BAF54F29AD99DF42E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ZipFile.h"; path = "../../../../modules/juce_core/zip/juce_ZipFile.h"; sourceTree = "SOURCE_ROOT"; }; + 17C645785FB20AA2E91ED84B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_gui_extra.h"; path = "../../../../modules/juce_gui_extra/juce_gui_extra.h"; sourceTree = "SOURCE_ROOT"; }; + 1814F5A906001DF674D1C6C1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RSAKey.h"; path = "../../../../modules/juce_cryptography/encryption/juce_RSAKey.h"; sourceTree = "SOURCE_ROOT"; }; + 188D03A4247F4BC0539F5C49 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_Colours.h"; path = "../../Source/Utility/jucer_Colours.h"; sourceTree = "SOURCE_ROOT"; }; + 189357BBA18F12A3242706A0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Viewport.h"; path = "../../../../modules/juce_gui_basics/layout/juce_Viewport.h"; sourceTree = "SOURCE_ROOT"; }; + 18B0B21258B417DFDEB9D5F0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Threads.cpp"; path = "../../../../modules/juce_core/native/juce_linux_Threads.cpp"; sourceTree = "SOURCE_ROOT"; }; + 18D9EBA1DAE45EEF81FD5C8F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_MainConsoleAppTemplate.cpp"; path = "../../Source/BinaryData/jucer_MainConsoleAppTemplate.cpp"; sourceTree = "SOURCE_ROOT"; }; + 193908A02BA553DB5B30D759 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ScopedLock.h"; path = "../../../../modules/juce_core/threads/juce_ScopedLock.h"; sourceTree = "SOURCE_ROOT"; }; + 199722DD9BA0E30C0506941E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MouseListener.cpp"; path = "../../../../modules/juce_gui_basics/mouse/juce_MouseListener.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1A1B5A2E9F1DA2122D21F9DF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ScopedPointer.h"; path = "../../../../modules/juce_core/memory/juce_ScopedPointer.h"; sourceTree = "SOURCE_ROOT"; }; + 1A1C8AEC3C5AB2E972B0212E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MD5.h"; path = "../../../../modules/juce_cryptography/hashing/juce_MD5.h"; sourceTree = "SOURCE_ROOT"; }; + 1A79A64F47F7B5083EEBB328 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ActionListener.h"; path = "../../../../modules/juce_events/broadcasters/juce_ActionListener.h"; sourceTree = "SOURCE_ROOT"; }; + 1ACDDD42A7050309C8765F75 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TextEditorKeyMapper.h"; path = "../../../../modules/juce_gui_basics/keyboard/juce_TextEditorKeyMapper.h"; sourceTree = "SOURCE_ROOT"; }; + 1AF7EFBE4961C7B6C834BF54 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_PresetIDs.h"; path = "../../Source/Utility/jucer_PresetIDs.h"; sourceTree = "SOURCE_ROOT"; }; + 1B03B2952A4DDA6E6A1C35F9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_UndoManager.h"; path = "../../../../modules/juce_data_structures/undomanager/juce_UndoManager.h"; sourceTree = "SOURCE_ROOT"; }; + 1B1A4A48AF3898485E7B1618 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ByteOrder.h"; path = "../../../../modules/juce_core/memory/juce_ByteOrder.h"; sourceTree = "SOURCE_ROOT"; }; + 1B2B08359011B2BD7B07A677 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ApplicationCommandTarget.cpp"; path = "../../../../modules/juce_gui_basics/commands/juce_ApplicationCommandTarget.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1B9552C3FEAFF2071C860987 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ColourSelector.cpp"; path = "../../../../modules/juce_gui_extra/misc/juce_ColourSelector.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1BE0A20FB2284A4DDC3A359E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CharPointer_UTF8.h"; path = "../../../../modules/juce_core/text/juce_CharPointer_UTF8.h"; sourceTree = "SOURCE_ROOT"; }; + 1BF5C3F5DC2285FBEF72B697 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MultiTimer.h"; path = "../../../../modules/juce_events/timers/juce_MultiTimer.h"; sourceTree = "SOURCE_ROOT"; }; + 1C666CA3AF0AB4CDCA1D983F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TextLayout.h"; path = "../../../../modules/juce_graphics/fonts/juce_TextLayout.h"; sourceTree = "SOURCE_ROOT"; }; + 1C76BBCD73ED21571035675F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileDragAndDropTarget.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_FileDragAndDropTarget.h"; sourceTree = "SOURCE_ROOT"; }; + 1EC7A8EEAD8ADF43BF014C2C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_MouseCursor.mm"; path = "../../../../modules/juce_gui_basics/native/juce_mac_MouseCursor.mm"; sourceTree = "SOURCE_ROOT"; }; + 1F28C0018228A0F749E5658E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileSearchPathListComponent.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileSearchPathListComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1F36217CE7A5B1D63D41EA6C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_CoreGraphicsContext.mm"; path = "../../../../modules/juce_graphics/native/juce_mac_CoreGraphicsContext.mm"; sourceTree = "SOURCE_ROOT"; }; + 1F421199C40092BFEE0658C2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_RelativePath.h"; path = "../../Source/Utility/jucer_RelativePath.h"; sourceTree = "SOURCE_ROOT"; }; + 1F7F2864FE54D79A0C42BE93 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Justification.h"; path = "../../../../modules/juce_graphics/placement/juce_Justification.h"; sourceTree = "SOURCE_ROOT"; }; + 202591AAB1ABCFE458F33F7C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DrawableButton.cpp"; path = "../../../../modules/juce_gui_basics/buttons/juce_DrawableButton.cpp"; sourceTree = "SOURCE_ROOT"; }; + 206D399250A42034706E5434 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ToolbarButton.h"; path = "../../../../modules/juce_gui_basics/buttons/juce_ToolbarButton.h"; sourceTree = "SOURCE_ROOT"; }; + 20FC504E8FB8D30E890A9837 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ChoicePropertyComponent.h"; path = "../../../../modules/juce_gui_basics/properties/juce_ChoicePropertyComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 2107C02B684C7F5B75662333 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Registry.cpp"; path = "../../../../modules/juce_core/native/juce_win32_Registry.cpp"; sourceTree = "SOURCE_ROOT"; }; + 210A4FDD4A56CF817E5E8567 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ImageConvolutionKernel.cpp"; path = "../../../../modules/juce_graphics/images/juce_ImageConvolutionKernel.cpp"; sourceTree = "SOURCE_ROOT"; }; + 215EAB10AE8D19F23AD2BDBC = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DrawableButton.h"; path = "../../../../modules/juce_gui_basics/buttons/juce_DrawableButton.h"; sourceTree = "SOURCE_ROOT"; }; + 21B6FE5EEB3E112385D62127 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Line.h"; path = "../../../../modules/juce_graphics/geometry/juce_Line.h"; sourceTree = "SOURCE_ROOT"; }; + 21D1D6A04B25346CD5524B89 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FilenameComponent.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FilenameComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 21F4416597D1AB02D38BA62E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileSearchPathListComponent.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileSearchPathListComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 21FAFA7F2C5D0E8D99876EA8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Direct2DGraphicsContext.cpp"; path = "../../../../modules/juce_graphics/native/juce_win32_Direct2DGraphicsContext.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2210EB5F41023B53ADD0DFBD = { isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_cryptography/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + 221C1BAC4138F261F97121AD = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GIFLoader.cpp"; path = "../../../../modules/juce_graphics/image_formats/juce_GIFLoader.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2247EE920DF0610CAF9F4513 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_OpenDocumentManager.cpp"; path = "../../Source/Application/jucer_OpenDocumentManager.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2252F2B96709F3C7CE07B5E7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Application.h"; path = "../../../../modules/juce_gui_basics/application/juce_Application.h"; sourceTree = "SOURCE_ROOT"; }; + 225414095942818432AAE07D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Expression.cpp"; path = "../../../../modules/juce_core/maths/juce_Expression.cpp"; sourceTree = "SOURCE_ROOT"; }; + 227646334D4CBE863870234C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TableListBox.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_TableListBox.h"; sourceTree = "SOURCE_ROOT"; }; + 2358EB55148891C87833008D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_win32_ComSmartPtr.h"; path = "../../../../modules/juce_core/native/juce_win32_ComSmartPtr.h"; sourceTree = "SOURCE_ROOT"; }; + 236FFB34CCADD5FC95DFF04D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Messaging.cpp"; path = "../../../../modules/juce_events/native/juce_win32_Messaging.cpp"; sourceTree = "SOURCE_ROOT"; }; + 23A8DE16C0CDB8EED18B008B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_CommandIDs.h"; path = "../../Source/Application/jucer_CommandIDs.h"; sourceTree = "SOURCE_ROOT"; }; + 240889EAEAC85D85AB61011B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ResizableBorderComponent.h"; path = "../../../../modules/juce_gui_basics/layout/juce_ResizableBorderComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 240BCAD873E4360E54CA2A81 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_SystemStats.cpp"; path = "../../../../modules/juce_core/native/juce_linux_SystemStats.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2411094E8B601FD897AD24F9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PropertySet.h"; path = "../../../../modules/juce_core/containers/juce_PropertySet.h"; sourceTree = "SOURCE_ROOT"; }; + 2416644BBABFD1F95EE12792 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MemoryBlock.cpp"; path = "../../../../modules/juce_core/memory/juce_MemoryBlock.cpp"; sourceTree = "SOURCE_ROOT"; }; + 24CA69C0CC466CD524021099 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_HashMap.h"; path = "../../../../modules/juce_core/containers/juce_HashMap.h"; sourceTree = "SOURCE_ROOT"; }; + 24CB53290AE7A023C1BDD0DC = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_InterProcessLock.h"; path = "../../../../modules/juce_core/threads/juce_InterProcessLock.h"; sourceTree = "SOURCE_ROOT"; }; + 25D76CD621FC2A211CF7BB52 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ChildProcess.h"; path = "../../../../modules/juce_core/threads/juce_ChildProcess.h"; sourceTree = "SOURCE_ROOT"; }; + 25E306BB0D875CB0934C405C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PreferencesPanel.cpp"; path = "../../../../modules/juce_gui_extra/misc/juce_PreferencesPanel.cpp"; sourceTree = "SOURCE_ROOT"; }; + 261EFE631AA08FB2651B78C7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_StringArray.cpp"; path = "../../../../modules/juce_core/text/juce_StringArray.cpp"; sourceTree = "SOURCE_ROOT"; }; + 263F153E8A277E02A3754BBF = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ToolbarButton.cpp"; path = "../../../../modules/juce_gui_basics/buttons/juce_ToolbarButton.cpp"; sourceTree = "SOURCE_ROOT"; }; + 26C4A38525D6A327C0102D18 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OldSchoolLookAndFeel.cpp"; path = "../../../../modules/juce_gui_extra/lookandfeel/juce_OldSchoolLookAndFeel.cpp"; sourceTree = "SOURCE_ROOT"; }; + 271A1D94B96A8B7C949FD8ED = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ComponentMovementWatcher.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_ComponentMovementWatcher.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2A060BB0D79BEC3CF644F553 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Clipboard.cpp"; path = "../../../../modules/juce_gui_basics/native/juce_linux_Clipboard.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2A4B079CDB9C40EB912B6EEB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileInputSource.h"; path = "../../../../modules/juce_core/streams/juce_FileInputSource.h"; sourceTree = "SOURCE_ROOT"; }; + 2AADCE9D8BADF4DAC05CCA1E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RenderingHelpers.h"; path = "../../../../modules/juce_graphics/native/juce_RenderingHelpers.h"; sourceTree = "SOURCE_ROOT"; }; + 2B074BFC193A25602E73D0CC = { isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_core/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + 2B8548461E318DCB3354DB43 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_gui_basics.h"; path = "../../../../modules/juce_gui_basics/juce_gui_basics.h"; sourceTree = "SOURCE_ROOT"; }; + 2BB98D1E325EF7BD90C6BBB4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_NamedPipe.h"; path = "../../../../modules/juce_core/network/juce_NamedPipe.h"; sourceTree = "SOURCE_ROOT"; }; + 2BC28F37C470E4770E479BCD = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Memory.h"; path = "../../../../modules/juce_core/memory/juce_Memory.h"; sourceTree = "SOURCE_ROOT"; }; + 2C7A9B2EDC724657EBF9FA83 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileSearchPath.cpp"; path = "../../../../modules/juce_core/files/juce_FileSearchPath.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2CB90BE5027B202896EBCE9D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OutputStream.h"; path = "../../../../modules/juce_core/streams/juce_OutputStream.h"; sourceTree = "SOURCE_ROOT"; }; + 2CD0B485ED8C5E8402671D36 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ResizableEdgeComponent.h"; path = "../../../../modules/juce_gui_basics/layout/juce_ResizableEdgeComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 2CD34A70B4032C0426F7AA10 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_MainWindow.h"; path = "../../Source/Application/jucer_MainWindow.h"; sourceTree = "SOURCE_ROOT"; }; + 2CFEE0E15C0ABF07EFE27FBF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_ProjectInformationComponent.h"; path = "../../Source/Project/jucer_ProjectInformationComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 2DF5213993DF1380E29C848A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_SliderPropertyComponent.cpp"; path = "../../../../modules/juce_gui_basics/properties/juce_SliderPropertyComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2E1F83CE00F5855083AFA246 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_SystemStats.cpp"; path = "../../../../modules/juce_core/native/juce_win32_SystemStats.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2E540A9137E245EFADCFABB3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_SystemTrayIcon.cpp"; path = "../../../../modules/juce_gui_extra/native/juce_linux_SystemTrayIcon.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2E680E2C65684A4272AE079A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_SourceCodeEditor.cpp"; path = "../../Source/Code Editor/jucer_SourceCodeEditor.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2E96852D55A9C1DEAF76FF6D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_StretchableLayoutManager.h"; path = "../../../../modules/juce_gui_basics/layout/juce_StretchableLayoutManager.h"; sourceTree = "SOURCE_ROOT"; }; + 2ED5D4ABB34DAA5D6E93A171 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_DirectWriteTypeLayout.cpp"; path = "../../../../modules/juce_graphics/native/juce_win32_DirectWriteTypeLayout.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2EEB1C074162F363C6599282 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_CommandLine.h"; path = "../../Source/Application/jucer_CommandLine.h"; sourceTree = "SOURCE_ROOT"; }; + 2FADEBA1901F74204DE253BC = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SystemClipboard.h"; path = "../../../../modules/juce_gui_basics/keyboard/juce_SystemClipboard.h"; sourceTree = "SOURCE_ROOT"; }; + 2FBA1138907F4DE651870008 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MouseListener.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_MouseListener.h"; sourceTree = "SOURCE_ROOT"; }; + 304EEA3B0DF16CE313D8A0BA = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileBrowserComponent.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileBrowserComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 3058CCA7DE9BB9B37FE73297 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_MainMenu.mm"; path = "../../../../modules/juce_gui_basics/native/juce_mac_MainMenu.mm"; sourceTree = "SOURCE_ROOT"; }; + 30AD756E053A0663BF664823 = { isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_graphics/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + 318F4AB64A5D4068CC1C4F29 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CodeTokeniser.h"; path = "../../../../modules/juce_gui_extra/code_editor/juce_CodeTokeniser.h"; sourceTree = "SOURCE_ROOT"; }; + 31A8DF142F8B653E285C7E01 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ImageCache.h"; path = "../../../../modules/juce_graphics/images/juce_ImageCache.h"; sourceTree = "SOURCE_ROOT"; }; + 31ACA83BF72B34828ADA1F3F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_StringPool.h"; path = "../../../../modules/juce_core/text/juce_StringPool.h"; sourceTree = "SOURCE_ROOT"; }; + 32070395DAFA5355D390A120 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_osx_MessageQueue.h"; path = "../../../../modules/juce_events/native/juce_osx_MessageQueue.h"; sourceTree = "SOURCE_ROOT"; }; + 322A68B4BBEE9CC039B9E024 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PreferencesPanel.h"; path = "../../../../modules/juce_gui_extra/misc/juce_PreferencesPanel.h"; sourceTree = "SOURCE_ROOT"; }; + 3276A099EB6880D55D2D52C0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_BufferedInputStream.cpp"; path = "../../../../modules/juce_core/streams/juce_BufferedInputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; + 32D9A904B4186B64A61FA8CC = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TimeSliceThread.cpp"; path = "../../../../modules/juce_core/threads/juce_TimeSliceThread.cpp"; sourceTree = "SOURCE_ROOT"; }; + 336D0A9B4D15CF866BCE3DFF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ComponentDragger.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_ComponentDragger.h"; sourceTree = "SOURCE_ROOT"; }; + 3419904525A3F1FF0CC50687 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileBasedDocument.cpp"; path = "../../../../modules/juce_gui_extra/documents/juce_FileBasedDocument.cpp"; sourceTree = "SOURCE_ROOT"; }; + 352DA3794CAAE2400AE8F2E0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_data_structures.h"; path = "../../../../modules/juce_data_structures/juce_data_structures.h"; sourceTree = "SOURCE_ROOT"; }; + 35AF9D5F0603CF6CE2D355A1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RelativeCoordinatePositioner.cpp"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativeCoordinatePositioner.cpp"; sourceTree = "SOURCE_ROOT"; }; + 35CB48D497F35BF3F6998F5D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_ProjectExporter.h"; path = "../../Source/Project Saving/jucer_ProjectExporter.h"; sourceTree = "SOURCE_ROOT"; }; + 364D1A9B113320407A7E57B9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = JuceHeader.h; path = ../../JuceLibraryCode/JuceHeader.h; sourceTree = "SOURCE_ROOT"; }; + 37A0A38C2B5825B9A302879C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ReferenceCountedArray.h"; path = "../../../../modules/juce_core/containers/juce_ReferenceCountedArray.h"; sourceTree = "SOURCE_ROOT"; }; + 3804BE13635F779ACB8C5491 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LassoComponent.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_LassoComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 38CE1587800D612BA0C394A5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ApplicationBase.h"; path = "../../../../modules/juce_events/messages/juce_ApplicationBase.h"; sourceTree = "SOURCE_ROOT"; }; + 38F29C2049566C47993A6D92 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_core.mm"; path = "../../../../modules/juce_core/juce_core.mm"; sourceTree = "SOURCE_ROOT"; }; + 3A2888667372BA896AACFBDB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TemporaryFile.h"; path = "../../../../modules/juce_core/files/juce_TemporaryFile.h"; sourceTree = "SOURCE_ROOT"; }; + 3A55FEFC24C387D3B29444D5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Result.cpp"; path = "../../../../modules/juce_core/misc/juce_Result.cpp"; sourceTree = "SOURCE_ROOT"; }; + 3AB1D4CECEADD4836ACEEAEE = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Time.h"; path = "../../../../modules/juce_core/time/juce_Time.h"; sourceTree = "SOURCE_ROOT"; }; + 3AB744A14A560E541723DC9A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Uuid.cpp"; path = "../../../../modules/juce_core/misc/juce_Uuid.cpp"; sourceTree = "SOURCE_ROOT"; }; + 3B061AB9BFD8883A6AE8BCE5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DynamicLibrary.h"; path = "../../../../modules/juce_core/threads/juce_DynamicLibrary.h"; sourceTree = "SOURCE_ROOT"; }; + 3C48242E40D358BC6FF7FE53 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PlatformDefs.h"; path = "../../../../modules/juce_core/system/juce_PlatformDefs.h"; sourceTree = "SOURCE_ROOT"; }; + 3CABAAC1C4BC0D8105183D56 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CachedComponentImage.h"; path = "../../../../modules/juce_gui_basics/components/juce_CachedComponentImage.h"; sourceTree = "SOURCE_ROOT"; }; + 3CD57938B4C273D0AA6E6B8B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Path.h"; path = "../../../../modules/juce_graphics/geometry/juce_Path.h"; sourceTree = "SOURCE_ROOT"; }; + 3D2B51C71E3676F283B778EA = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DragAndDropContainer.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_DragAndDropContainer.h"; sourceTree = "SOURCE_ROOT"; }; + 3F1501FE4867042830B25DD5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_CustomTypeface.cpp"; path = "../../../../modules/juce_graphics/fonts/juce_CustomTypeface.cpp"; sourceTree = "SOURCE_ROOT"; }; + 3F222D26A164E7AD78A33B3D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ToggleButton.h"; path = "../../../../modules/juce_gui_basics/buttons/juce_ToggleButton.h"; sourceTree = "SOURCE_ROOT"; }; + 3FAFD16944A6674164D23914 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CharPointer_ASCII.h"; path = "../../../../modules/juce_core/text/juce_CharPointer_ASCII.h"; sourceTree = "SOURCE_ROOT"; }; + 40A83A20ED109AAAE6D63AF4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DrawableRectangle.h"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawableRectangle.h"; sourceTree = "SOURCE_ROOT"; }; + 412B48D0F05D78A73064B36B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TopLevelWindow.cpp"; path = "../../../../modules/juce_gui_basics/windows/juce_TopLevelWindow.cpp"; sourceTree = "SOURCE_ROOT"; }; + 422524EBD7DA6530970A7872 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DropShadower.h"; path = "../../../../modules/juce_gui_basics/misc/juce_DropShadower.h"; sourceTree = "SOURCE_ROOT"; }; + 42B5C970B8DCD08A864F2208 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_StretchableObjectResizer.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_StretchableObjectResizer.cpp"; sourceTree = "SOURCE_ROOT"; }; + 430239E0574C157689D83206 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CodeDocument.h"; path = "../../../../modules/juce_gui_extra/code_editor/juce_CodeDocument.h"; sourceTree = "SOURCE_ROOT"; }; + 43B98AB307841FAAB076B882 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Justification.cpp"; path = "../../../../modules/juce_graphics/placement/juce_Justification.cpp"; sourceTree = "SOURCE_ROOT"; }; + 441A0EA83E44264CB977F21B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_mac_CarbonViewWrapperComponent.h"; path = "../../../../modules/juce_gui_extra/native/juce_mac_CarbonViewWrapperComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 442031AD0C8A280B68CE9EF0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ResizableCornerComponent.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_ResizableCornerComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 4437785A3DFF4AB2D6A78DB3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_StretchableLayoutResizerBar.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_StretchableLayoutResizerBar.cpp"; sourceTree = "SOURCE_ROOT"; }; + 444CA4B9CAD1F5ED5C45448B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ToolbarItemPalette.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_ToolbarItemPalette.cpp"; sourceTree = "SOURCE_ROOT"; }; + 44BEFED79E5FE4F558458C14 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Fonts.cpp"; path = "../../../../modules/juce_graphics/native/juce_linux_Fonts.cpp"; sourceTree = "SOURCE_ROOT"; }; + 4524F465153A8F6BDC236349 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_StretchableLayoutManager.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_StretchableLayoutManager.cpp"; sourceTree = "SOURCE_ROOT"; }; + 4543EACC9AEA1894A380624F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileChooser.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileChooser.cpp"; sourceTree = "SOURCE_ROOT"; }; + 45B8EAC396722D21E6658AE8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DialogWindow.cpp"; path = "../../../../modules/juce_gui_basics/windows/juce_DialogWindow.cpp"; sourceTree = "SOURCE_ROOT"; }; + 46C2D683A917A9D3729EEAC4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ScopedReadLock.h"; path = "../../../../modules/juce_core/threads/juce_ScopedReadLock.h"; sourceTree = "SOURCE_ROOT"; }; + 472F9A90F685220D730EBF6C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = BinaryData.cpp; path = ../../JuceLibraryCode/BinaryData.cpp; sourceTree = "SOURCE_ROOT"; }; + 47DD50A5A9091F9900E0EAD9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_JucerTreeViewBase.cpp"; path = "../../Source/Utility/jucer_JucerTreeViewBase.cpp"; sourceTree = "SOURCE_ROOT"; }; + 47F4C6341177140302CE802A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DragAndDropTarget.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_DragAndDropTarget.h"; sourceTree = "SOURCE_ROOT"; }; + 4904357A3FFA61972A9E9D6F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PerformanceCounter.h"; path = "../../../../modules/juce_core/time/juce_PerformanceCounter.h"; sourceTree = "SOURCE_ROOT"; }; + 490FEE91E483534632094C67 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ComponentAnimator.h"; path = "../../../../modules/juce_gui_basics/layout/juce_ComponentAnimator.h"; sourceTree = "SOURCE_ROOT"; }; + 4924392751ACE0C9F2076599 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ComponentAnimator.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_ComponentAnimator.cpp"; sourceTree = "SOURCE_ROOT"; }; + 4977BC2F82532C86B116A07F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_NativeMessageBox.h"; path = "../../../../modules/juce_gui_basics/windows/juce_NativeMessageBox.h"; sourceTree = "SOURCE_ROOT"; }; + 49A941554FB8B2B20F219182 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RelativePointPath.h"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativePointPath.h"; sourceTree = "SOURCE_ROOT"; }; + 4A41FD3066D0979DB48691E5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_MiscUtilities.h"; path = "../../Source/Utility/jucer_MiscUtilities.h"; sourceTree = "SOURCE_ROOT"; }; + 4AE0078871D92B6085C28313 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AlertWindow.cpp"; path = "../../../../modules/juce_gui_basics/windows/juce_AlertWindow.cpp"; sourceTree = "SOURCE_ROOT"; }; + 4AF755C65E352951D80FB93B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ApplicationProperties.cpp"; path = "../../../../modules/juce_data_structures/app_properties/juce_ApplicationProperties.cpp"; sourceTree = "SOURCE_ROOT"; }; + 4B98FC7F079F93BCC4D65C86 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_FileChooser.cpp"; path = "../../../../modules/juce_gui_basics/native/juce_linux_FileChooser.cpp"; sourceTree = "SOURCE_ROOT"; }; + 4BAF0975F0958432B17D0D41 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_ProjectTreeViewBase.cpp"; path = "../../Source/Project/jucer_ProjectTreeViewBase.cpp"; sourceTree = "SOURCE_ROOT"; }; + 4BC9122A6E6496EAF716560E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ListBox.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_ListBox.cpp"; sourceTree = "SOURCE_ROOT"; }; + 4C150A1BF98D747EC218A602 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Component.cpp"; path = "../../../../modules/juce_gui_basics/components/juce_Component.cpp"; sourceTree = "SOURCE_ROOT"; }; + 4CA1C3E6585D7694AA9C309F = { isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = Info.plist; path = Info.plist; sourceTree = "SOURCE_ROOT"; }; + 4D6F99ED00A4D8683AF313B2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ColourGradient.h"; path = "../../../../modules/juce_graphics/colour/juce_ColourGradient.h"; sourceTree = "SOURCE_ROOT"; }; + 4D7F53313945ED27A7D16B80 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Result.h"; path = "../../../../modules/juce_core/misc/juce_Result.h"; sourceTree = "SOURCE_ROOT"; }; + 4E259F36C28F1ACDAB4CC73F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ModalComponentManager.h"; path = "../../../../modules/juce_gui_basics/components/juce_ModalComponentManager.h"; sourceTree = "SOURCE_ROOT"; }; + 4E3AE065222C8C87691DF2DE = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_KeyListener.h"; path = "../../../../modules/juce_gui_basics/keyboard/juce_KeyListener.h"; sourceTree = "SOURCE_ROOT"; }; + 4E5FFE3BE8774948082411F0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TimeSliceThread.h"; path = "../../../../modules/juce_core/threads/juce_TimeSliceThread.h"; sourceTree = "SOURCE_ROOT"; }; + 4F5843D423E67797070115B3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Timer.cpp"; path = "../../../../modules/juce_events/timers/juce_Timer.cpp"; sourceTree = "SOURCE_ROOT"; }; + 4F687965FBE86EAFDB3ACFEC = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = BinaryData.h; path = ../../JuceLibraryCode/BinaryData.h; sourceTree = "SOURCE_ROOT"; }; + 4F88933C6D2AB8A83EB14E16 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LinkedListPointer.h"; path = "../../../../modules/juce_core/containers/juce_LinkedListPointer.h"; sourceTree = "SOURCE_ROOT"; }; + 50672C2FACA36416A9A86310 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_InterprocessConnectionServer.h"; path = "../../../../modules/juce_events/interprocess/juce_InterprocessConnectionServer.h"; sourceTree = "SOURCE_ROOT"; }; + 50DBEAC56E34B9909BA9C7AD = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BigInteger.h"; path = "../../../../modules/juce_core/maths/juce_BigInteger.h"; sourceTree = "SOURCE_ROOT"; }; + 50EF77E1AB95027E82157377 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GlyphArrangement.cpp"; path = "../../../../modules/juce_graphics/fonts/juce_GlyphArrangement.cpp"; sourceTree = "SOURCE_ROOT"; }; + 514848DA3E69A69AB0099570 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Threads.cpp"; path = "../../../../modules/juce_core/native/juce_win32_Threads.cpp"; sourceTree = "SOURCE_ROOT"; }; + 51A0763AC785F93591517559 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DrawableText.cpp"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawableText.cpp"; sourceTree = "SOURCE_ROOT"; }; + 51C6A6EB22F80FFF0A2800B3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CharPointer_UTF16.h"; path = "../../../../modules/juce_core/text/juce_CharPointer_UTF16.h"; sourceTree = "SOURCE_ROOT"; }; + 51D0841BECA0E4405EDEC794 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_BubbleMessageComponent.cpp"; path = "../../../../modules/juce_gui_extra/misc/juce_BubbleMessageComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 51D4296A417B284BB2666FE8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Slider.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_Slider.h"; sourceTree = "SOURCE_ROOT"; }; + 52508197A5E3C0040A5651CF = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_BooleanPropertyComponent.cpp"; path = "../../../../modules/juce_gui_basics/properties/juce_BooleanPropertyComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 5283D6B68A74B09EB6D68711 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_InputStream.h"; path = "../../../../modules/juce_core/streams/juce_InputStream.h"; sourceTree = "SOURCE_ROOT"; }; + 52D8EA5A16D441BE77242E9D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Identifier.cpp"; path = "../../../../modules/juce_core/text/juce_Identifier.cpp"; sourceTree = "SOURCE_ROOT"; }; + 53151B683E11F420203E61C2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_NewCppFileTemplate.h"; path = "../../Source/BinaryData/jucer_NewCppFileTemplate.h"; sourceTree = "SOURCE_ROOT"; }; + 53704A9E32438DCEFF6A155B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_WebBrowserComponent.cpp"; path = "../../../../modules/juce_gui_extra/native/juce_android_WebBrowserComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 5382FC7D5D61AE2AD603240B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PropertyPanel.cpp"; path = "../../../../modules/juce_gui_basics/properties/juce_PropertyPanel.cpp"; sourceTree = "SOURCE_ROOT"; }; + 53CC682B805DD49B6E434A95 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_HeapBlock.h"; path = "../../../../modules/juce_core/memory/juce_HeapBlock.h"; sourceTree = "SOURCE_ROOT"; }; + 53DB14312FF9B861739F6747 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AppleRemote.h"; path = "../../../../modules/juce_gui_extra/misc/juce_AppleRemote.h"; sourceTree = "SOURCE_ROOT"; }; + 541BCBB19A86B7E793D397CC = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Thread.cpp"; path = "../../../../modules/juce_core/threads/juce_Thread.cpp"; sourceTree = "SOURCE_ROOT"; }; + 54569C1C994F3A0255785EAA = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Messaging.cpp"; path = "../../../../modules/juce_events/native/juce_android_Messaging.cpp"; sourceTree = "SOURCE_ROOT"; }; + 54747E887C1021F05F172B89 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ApplicationCommandManager.cpp"; path = "../../../../modules/juce_gui_basics/commands/juce_ApplicationCommandManager.cpp"; sourceTree = "SOURCE_ROOT"; }; + 553725A0E3A391651ED1731E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_FileHelpers.h"; path = "../../Source/Utility/jucer_FileHelpers.h"; sourceTree = "SOURCE_ROOT"; }; + 55F7CE15FA02A9F599A83A58 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DynamicObject.h"; path = "../../../../modules/juce_core/containers/juce_DynamicObject.h"; sourceTree = "SOURCE_ROOT"; }; + 563091B0916AD9AAA36C7DC5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_OpenDocumentManager.h"; path = "../../Source/Application/jucer_OpenDocumentManager.h"; sourceTree = "SOURCE_ROOT"; }; + 5644F0AFA78E8AC7501978DE = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MenuBarComponent.cpp"; path = "../../../../modules/juce_gui_basics/menus/juce_MenuBarComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 56B52F0F6AEDCEC78C38B5F1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AffineTransform.h"; path = "../../../../modules/juce_graphics/geometry/juce_AffineTransform.h"; sourceTree = "SOURCE_ROOT"; }; + 56E24241C02F953589493551 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_events.mm"; path = "../../../../modules/juce_events/juce_events.mm"; sourceTree = "SOURCE_ROOT"; }; + 56E8C48ADDEBD48A49C885CB = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_SplashScreen.cpp"; path = "../../../../modules/juce_gui_extra/misc/juce_SplashScreen.cpp"; sourceTree = "SOURCE_ROOT"; }; + 5708CF7899EA21D0B72CDC2A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_BlowFish.cpp"; path = "../../../../modules/juce_cryptography/encryption/juce_BlowFish.cpp"; sourceTree = "SOURCE_ROOT"; }; + 5745ECDAA4216EE2AF97E5AF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Button.h"; path = "../../../../modules/juce_gui_basics/buttons/juce_Button.h"; sourceTree = "SOURCE_ROOT"; }; + 578AA1C9D44D2E3AEA5D0278 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ImagePreviewComponent.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_ImagePreviewComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 57FD2D74F5DCFF42099CA738 = { isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_gui_extra/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + 5843A5060852C6ACC4770EC7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Fonts.cpp"; path = "../../../../modules/juce_graphics/native/juce_win32_Fonts.cpp"; sourceTree = "SOURCE_ROOT"; }; + 5852830ECC222BA36A30EC20 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_NewFileWizard.h"; path = "../../Source/Project/jucer_NewFileWizard.h"; sourceTree = "SOURCE_ROOT"; }; + 58858190E0EE0AA6955EA236 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_ios_UIViewComponent.mm"; path = "../../../../modules/juce_gui_extra/native/juce_ios_UIViewComponent.mm"; sourceTree = "SOURCE_ROOT"; }; + 58943E79C32289AB7273F59D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DragAndDropContainer.cpp"; path = "../../../../modules/juce_gui_basics/mouse/juce_DragAndDropContainer.cpp"; sourceTree = "SOURCE_ROOT"; }; + 589A6DAE96E2A7924646873F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_SubregionStream.cpp"; path = "../../../../modules/juce_core/streams/juce_SubregionStream.cpp"; sourceTree = "SOURCE_ROOT"; }; + 59184A106CE3FAE8BFCD82FF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ThreadWithProgressWindow.h"; path = "../../../../modules/juce_gui_basics/windows/juce_ThreadWithProgressWindow.h"; sourceTree = "SOURCE_ROOT"; }; + 5B462BC3C5F8B6D72688ABF3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_BubbleComponent.cpp"; path = "../../../../modules/juce_gui_basics/misc/juce_BubbleComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 5B8DF06BA7B7CB88C4922682 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TabbedComponent.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_TabbedComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 5BC5622E615CA3B13C6F9046 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_StretchableObjectResizer.h"; path = "../../../../modules/juce_gui_basics/layout/juce_StretchableObjectResizer.h"; sourceTree = "SOURCE_ROOT"; }; + 5C82ACC4EE09A1DE1CCEC9A0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Primes.cpp"; path = "../../../../modules/juce_cryptography/encryption/juce_Primes.cpp"; sourceTree = "SOURCE_ROOT"; }; + 5CB6ACA0F14EDE47A4F7BCC2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BubbleMessageComponent.h"; path = "../../../../modules/juce_gui_extra/misc/juce_BubbleMessageComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 5D5E0592B7C61D523CC40C50 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ValueTree.cpp"; path = "../../../../modules/juce_data_structures/values/juce_ValueTree.cpp"; sourceTree = "SOURCE_ROOT"; }; + 5DBA8C92675235B098946B18 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MemoryOutputStream.cpp"; path = "../../../../modules/juce_core/streams/juce_MemoryOutputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; + 5E674E757BBB4EA2F62B12E9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RelativeRectangle.cpp"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativeRectangle.cpp"; sourceTree = "SOURCE_ROOT"; }; + 5F04029BEEB2A503B29B13FB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AsyncUpdater.h"; path = "../../../../modules/juce_events/broadcasters/juce_AsyncUpdater.h"; sourceTree = "SOURCE_ROOT"; }; + 5F4F4EAB042F2730F94A1CEA = { isa = PBXFileReference; lastKnownFileType = text.txt; name = AudioPluginXCodeScript.txt; path = ../../Source/BinaryData/AudioPluginXCodeScript.txt; sourceTree = "SOURCE_ROOT"; }; + 600102C053153EE4E1E72C85 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_MessageManager.mm"; path = "../../../../modules/juce_events/native/juce_mac_MessageManager.mm"; sourceTree = "SOURCE_ROOT"; }; + 61593EB1738286004B592FD5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_StretchableLayoutResizerBar.h"; path = "../../../../modules/juce_gui_basics/layout/juce_StretchableLayoutResizerBar.h"; sourceTree = "SOURCE_ROOT"; }; + 6165970F48D70C4EF06D35C4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_LowLevelGraphicsSoftwareRenderer.cpp"; path = "../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsSoftwareRenderer.cpp"; sourceTree = "SOURCE_ROOT"; }; + 619D4AFD1F66A75AE05DDAE1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ReadWriteLock.h"; path = "../../../../modules/juce_core/threads/juce_ReadWriteLock.h"; sourceTree = "SOURCE_ROOT"; }; + 61A072FFE3185BDDC42DA144 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_BigInteger.cpp"; path = "../../../../modules/juce_core/maths/juce_BigInteger.cpp"; sourceTree = "SOURCE_ROOT"; }; + 620C2E1340FB7A40C1A2316B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LowLevelGraphicsSoftwareRenderer.h"; path = "../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsSoftwareRenderer.h"; sourceTree = "SOURCE_ROOT"; }; + 628869AB2D553E2A6C68C748 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MenuBarComponent.h"; path = "../../../../modules/juce_gui_basics/menus/juce_MenuBarComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 63092DCDC875D681A5677105 = { isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_events/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + 631983AA62673015F8D7453B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_StoredSettings.cpp"; path = "../../Source/Utility/jucer_StoredSettings.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6367309B2092121B86FE3AA0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_posix_NamedPipe.cpp"; path = "../../../../modules/juce_core/native/juce_posix_NamedPipe.cpp"; sourceTree = "SOURCE_ROOT"; }; + 63B72B34BC9AC448422EF1A0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DocumentWindow.cpp"; path = "../../../../modules/juce_gui_basics/windows/juce_DocumentWindow.cpp"; sourceTree = "SOURCE_ROOT"; }; + 63B74F9D9F43393F6427501C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_WebBrowserComponent.h"; path = "../../../../modules/juce_gui_extra/misc/juce_WebBrowserComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 64CF8D7D0C97323C1B4F16F2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ImageComponent.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_ImageComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 65F4749184C84C2FDBB4C305 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_AudioPluginFilterTemplate.cpp"; path = "../../Source/BinaryData/jucer_AudioPluginFilterTemplate.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6658BF44509F89120F6C6F8C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileListComponent.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileListComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6670AE915E331809563CA152 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_core.h"; path = "../../../../modules/juce_core/juce_core.h"; sourceTree = "SOURCE_ROOT"; }; + 66A67F1C25A59167AA729C9C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AbstractFifo.h"; path = "../../../../modules/juce_core/containers/juce_AbstractFifo.h"; sourceTree = "SOURCE_ROOT"; }; + 6736FDF36413E6445C526C86 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ThreadPool.cpp"; path = "../../../../modules/juce_core/threads/juce_ThreadPool.cpp"; sourceTree = "SOURCE_ROOT"; }; + 68351D69C94230D1DCDB8345 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Threads.cpp"; path = "../../../../modules/juce_core/native/juce_android_Threads.cpp"; sourceTree = "SOURCE_ROOT"; }; + 684D88D936EDF46A76EC0538 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Colours.cpp"; path = "../../../../modules/juce_graphics/colour/juce_Colours.cpp"; sourceTree = "SOURCE_ROOT"; }; + 68C633ECE610641BB1D21C95 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ImageConvolutionKernel.h"; path = "../../../../modules/juce_graphics/images/juce_ImageConvolutionKernel.h"; sourceTree = "SOURCE_ROOT"; }; + 68E1CA6424A84D91BEA46175 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_GZIPCompressorOutputStream.h"; path = "../../../../modules/juce_core/zip/juce_GZIPCompressorOutputStream.h"; sourceTree = "SOURCE_ROOT"; }; + 6920079B91BB1A48F82C7B0A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RelativePoint.h"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativePoint.h"; sourceTree = "SOURCE_ROOT"; }; + 6944804CF7BBD230EDF98E3F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_GlyphArrangement.h"; path = "../../../../modules/juce_graphics/fonts/juce_GlyphArrangement.h"; sourceTree = "SOURCE_ROOT"; }; + 69A5D13490A62DAE9A7D5A22 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_NewProjectWizard.cpp"; path = "../../Source/Project/jucer_NewProjectWizard.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6A04C2E34DB0C6515FFF160B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Application.cpp"; path = "../../../../modules/juce_gui_basics/application/juce_Application.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6AA46ED6C6DDD5A7BC72F686 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OptionalScopedPointer.h"; path = "../../../../modules/juce_core/memory/juce_OptionalScopedPointer.h"; sourceTree = "SOURCE_ROOT"; }; + 6B693819BC8F0548179A74AA = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_GlowEffect.h"; path = "../../../../modules/juce_graphics/effects/juce_GlowEffect.h"; sourceTree = "SOURCE_ROOT"; }; + 6B8796ED91A82AB5A8EB922F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RecentlyOpenedFilesList.cpp"; path = "../../../../modules/juce_gui_extra/misc/juce_RecentlyOpenedFilesList.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6B8E7B90EE615FA508709ADF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BooleanPropertyComponent.h"; path = "../../../../modules/juce_gui_basics/properties/juce_BooleanPropertyComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 6BAA8DF455FA84AE62E9DADC = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Uuid.h"; path = "../../../../modules/juce_core/misc/juce_Uuid.h"; sourceTree = "SOURCE_ROOT"; }; + 6CB2CFC7615B804CE7514A24 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GraphicsContext.cpp"; path = "../../../../modules/juce_graphics/contexts/juce_GraphicsContext.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6CD1E57C60BC2917A46BF4AD = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Socket.cpp"; path = "../../../../modules/juce_core/network/juce_Socket.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6D3FB966CF0EBF70802B3575 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PropertyComponent.h"; path = "../../../../modules/juce_gui_basics/properties/juce_PropertyComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 6D596D17B6A79C2E6C4CFBD1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TextButton.h"; path = "../../../../modules/juce_gui_basics/buttons/juce_TextButton.h"; sourceTree = "SOURCE_ROOT"; }; + 6DFAF945FC3A7D0689C5CEC8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ArrayAllocationBase.h"; path = "../../../../modules/juce_core/containers/juce_ArrayAllocationBase.h"; sourceTree = "SOURCE_ROOT"; }; + 6DFDC749FF36D8C27C997B3E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Button.cpp"; path = "../../../../modules/juce_gui_basics/buttons/juce_Button.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6E6140969908E7619F858740 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_CommonHeaders.h"; path = "../../Source/Application/jucer_CommonHeaders.h"; sourceTree = "SOURCE_ROOT"; }; + 6E7353DFEA8825B515049ABB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_ProjectExport_Android.h"; path = "../../Source/Project Saving/jucer_ProjectExport_Android.h"; sourceTree = "SOURCE_ROOT"; }; + 6E815592344CAA798C9848BF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_WeakReference.h"; path = "../../../../modules/juce_core/memory/juce_WeakReference.h"; sourceTree = "SOURCE_ROOT"; }; + 6E8B46E33BF7A0DD930A5100 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileTreeComponent.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileTreeComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6EE1847181635ED3C0838A4B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LowLevelGraphicsPostScriptRenderer.h"; path = "../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsPostScriptRenderer.h"; sourceTree = "SOURCE_ROOT"; }; + 6EE91491434D058606460AFB = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GroupComponent.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_GroupComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6F8A53EDF09094C83DE4D111 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CPlusPlusCodeTokeniser.h"; path = "../../../../modules/juce_gui_extra/code_editor/juce_CPlusPlusCodeTokeniser.h"; sourceTree = "SOURCE_ROOT"; }; + 6FA01AEDB9DB70FD1EA6D380 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_GroupInformationComponent.cpp"; path = "../../Source/Project/jucer_GroupInformationComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 7074AEDE4B0416BC898DD27A = { isa = PBXFileReference; lastKnownFileType = image.png; name = "brushed_aluminium.png"; path = "../../Source/BinaryData/brushed_aluminium.png"; sourceTree = "SOURCE_ROOT"; }; + 70CF9F1991538524A7C4CE39 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Fonts.cpp"; path = "../../../../modules/juce_graphics/native/juce_android_Fonts.cpp"; sourceTree = "SOURCE_ROOT"; }; + 70DC1D288DC6503E628A5A03 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_gui_basics.mm"; path = "../../../../modules/juce_gui_basics/juce_gui_basics.mm"; sourceTree = "SOURCE_ROOT"; }; + 7211101FFA28400ADBB1D47A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_Module.h"; path = "../../Source/Project/jucer_Module.h"; sourceTree = "SOURCE_ROOT"; }; + 72FED7B10FBF5AD1F504FDFF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Value.h"; path = "../../../../modules/juce_data_structures/values/juce_Value.h"; sourceTree = "SOURCE_ROOT"; }; + 736E99601AB6C492D82DBF3A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_HyperlinkButton.h"; path = "../../../../modules/juce_gui_basics/buttons/juce_HyperlinkButton.h"; sourceTree = "SOURCE_ROOT"; }; + 7435199CD81F307322FE1065 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_SystemTrayIcon.cpp"; path = "../../../../modules/juce_gui_extra/native/juce_win32_SystemTrayIcon.cpp"; sourceTree = "SOURCE_ROOT"; }; + 7507846FD162469386479CDB = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MenuBarModel.cpp"; path = "../../../../modules/juce_gui_basics/menus/juce_MenuBarModel.cpp"; sourceTree = "SOURCE_ROOT"; }; + 75EB08697D38632CCBE734D8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SpinLock.h"; path = "../../../../modules/juce_core/threads/juce_SpinLock.h"; sourceTree = "SOURCE_ROOT"; }; + 76439EAACE53C774CE07BD9E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Toolbar.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_Toolbar.cpp"; sourceTree = "SOURCE_ROOT"; }; + 7723BAE1917C8A0418F2D23B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TextEditor.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_TextEditor.h"; sourceTree = "SOURCE_ROOT"; }; + 77B05CF7C9BB9778EC06C396 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_KeyPress.h"; path = "../../../../modules/juce_gui_basics/keyboard/juce_KeyPress.h"; sourceTree = "SOURCE_ROOT"; }; + 784287AD783AB8DDF512956F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_GraphicsContext.cpp"; path = "../../../../modules/juce_graphics/native/juce_android_GraphicsContext.cpp"; sourceTree = "SOURCE_ROOT"; }; + 78B148C840109794FED89FAB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ThreadPool.h"; path = "../../../../modules/juce_core/threads/juce_ThreadPool.h"; sourceTree = "SOURCE_ROOT"; }; + 78B2E510278C074CC7BEFD75 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Path.cpp"; path = "../../../../modules/juce_graphics/geometry/juce_Path.cpp"; sourceTree = "SOURCE_ROOT"; }; + 78CA0E0F336229E2E2F111B0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_SourceCodeEditor.h"; path = "../../Source/Code Editor/jucer_SourceCodeEditor.h"; sourceTree = "SOURCE_ROOT"; }; + 79339A92305BFB7034095C67 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Label.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_Label.h"; sourceTree = "SOURCE_ROOT"; }; + 795AF1D634CA3E6FA899E0B0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_CharacterFunctions.cpp"; path = "../../../../modules/juce_core/text/juce_CharacterFunctions.cpp"; sourceTree = "SOURCE_ROOT"; }; + 796AEF1400580E81AAF23CE7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ImageFileFormat.h"; path = "../../../../modules/juce_graphics/images/juce_ImageFileFormat.h"; sourceTree = "SOURCE_ROOT"; }; + 79F7CC3E9B848AAA3A5C682B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PathStrokeType.cpp"; path = "../../../../modules/juce_graphics/geometry/juce_PathStrokeType.cpp"; sourceTree = "SOURCE_ROOT"; }; + 7B824A2F1BBE334B140BD8AF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AttributedString.h"; path = "../../../../modules/juce_graphics/fonts/juce_AttributedString.h"; sourceTree = "SOURCE_ROOT"; }; + 7C02936574E000C436E3AD8E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Value.cpp"; path = "../../../../modules/juce_data_structures/values/juce_Value.cpp"; sourceTree = "SOURCE_ROOT"; }; + 7C48EA717C5B1136A39FF4FB = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_InterprocessConnection.cpp"; path = "../../../../modules/juce_events/interprocess/juce_InterprocessConnection.cpp"; sourceTree = "SOURCE_ROOT"; }; + 7CBB297E627A7DC7EA12A8B6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_KeyPress.cpp"; path = "../../../../modules/juce_gui_basics/keyboard/juce_KeyPress.cpp"; sourceTree = "SOURCE_ROOT"; }; + 7CFA76389645D629E6C61B39 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FilePreviewComponent.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FilePreviewComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 7D264E60AC701D3736527D8C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_NSViewComponentPeer.mm"; path = "../../../../modules/juce_gui_basics/native/juce_mac_NSViewComponentPeer.mm"; sourceTree = "SOURCE_ROOT"; }; + 7D50F21E9F18C152C9C662D5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ComponentBuilder.h"; path = "../../../../modules/juce_gui_basics/layout/juce_ComponentBuilder.h"; sourceTree = "SOURCE_ROOT"; }; + 7DCAE585F301C5591F96AF99 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MouseEvent.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_MouseEvent.h"; sourceTree = "SOURCE_ROOT"; }; + 7DF304ACC22704A1B2454B68 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_WindowTemplate.h"; path = "../../Source/BinaryData/jucer_WindowTemplate.h"; sourceTree = "SOURCE_ROOT"; }; + 7E0C5AFB74461AC174941BDD = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ApplicationCommandManager.h"; path = "../../../../modules/juce_gui_basics/commands/juce_ApplicationCommandManager.h"; sourceTree = "SOURCE_ROOT"; }; + 7E3ACAD10381DA0D81093329 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ElementComparator.h"; path = "../../../../modules/juce_core/containers/juce_ElementComparator.h"; sourceTree = "SOURCE_ROOT"; }; + 7E45364D59D84EF762F1A928 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MemoryBlock.h"; path = "../../../../modules/juce_core/memory/juce_MemoryBlock.h"; sourceTree = "SOURCE_ROOT"; }; + 7ECD37A096E0B99622585950 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Variant.h"; path = "../../../../modules/juce_core/containers/juce_Variant.h"; sourceTree = "SOURCE_ROOT"; }; + 7EF2BB6A11579386E7181553 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MouseEvent.cpp"; path = "../../../../modules/juce_gui_basics/mouse/juce_MouseEvent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 7FC13BEF6B2A5E5E5E92D3FC = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ToolbarItemComponent.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_ToolbarItemComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 7FDC4820A86DBA34E62B241E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AsyncUpdater.cpp"; path = "../../../../modules/juce_events/broadcasters/juce_AsyncUpdater.cpp"; sourceTree = "SOURCE_ROOT"; }; + 7FF7EFDC3CF13673541E332D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RelativePointPath.cpp"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativePointPath.cpp"; sourceTree = "SOURCE_ROOT"; }; + 80131CEDAA488DC654996A55 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RelativeParallelogram.h"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativeParallelogram.h"; sourceTree = "SOURCE_ROOT"; }; + 808503667FBB423F81780796 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DirectoryContentsDisplayComponent.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_DirectoryContentsDisplayComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 8090981F07A76E465DAAADF4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_ValueSourceHelpers.h"; path = "../../Source/Utility/jucer_ValueSourceHelpers.h"; sourceTree = "SOURCE_ROOT"; }; + 81A3ACDD205C8F9E424B51F6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_android_JNIHelpers.h"; path = "../../../../modules/juce_core/native/juce_android_JNIHelpers.h"; sourceTree = "SOURCE_ROOT"; }; + 81B74E2B42184AD339E89F0B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_ActiveXComponent.cpp"; path = "../../../../modules/juce_gui_extra/native/juce_win32_ActiveXComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 820291543BF93243B718F0EE = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_JucerTreeViewBase.h"; path = "../../Source/Utility/jucer_JucerTreeViewBase.h"; sourceTree = "SOURCE_ROOT"; }; + 82395D0DB15E012EDA1AC1FE = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PathStrokeType.h"; path = "../../../../modules/juce_graphics/geometry/juce_PathStrokeType.h"; sourceTree = "SOURCE_ROOT"; }; + 82E0CDC77F8802A998A475D7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ComboBox.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_ComboBox.cpp"; sourceTree = "SOURCE_ROOT"; }; + 83056E8F17A0365667EBEA82 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MemoryMappedFile.h"; path = "../../../../modules/juce_core/files/juce_MemoryMappedFile.h"; sourceTree = "SOURCE_ROOT"; }; + 83EB0CAD2379BD53DBEB9D0F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_Threads.mm"; path = "../../../../modules/juce_core/native/juce_mac_Threads.mm"; sourceTree = "SOURCE_ROOT"; }; + 8427B23B886EDC0E1839D7C1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ResizableBorderComponent.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_ResizableBorderComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 84444B1D8FCE50BA88CDE7BF = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_FileChooser.cpp"; path = "../../../../modules/juce_gui_basics/native/juce_win32_FileChooser.cpp"; sourceTree = "SOURCE_ROOT"; }; + 848D1FD80E9CA20E4977B516 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_SHA256.cpp"; path = "../../../../modules/juce_cryptography/hashing/juce_SHA256.cpp"; sourceTree = "SOURCE_ROOT"; }; + 84AADFD13AF2A6F6F4681051 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Primes.h"; path = "../../../../modules/juce_cryptography/encryption/juce_Primes.h"; sourceTree = "SOURCE_ROOT"; }; + 8575C117887D90BDF84397C3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SubregionStream.h"; path = "../../../../modules/juce_core/streams/juce_SubregionStream.h"; sourceTree = "SOURCE_ROOT"; }; + 859DCE43FF52E0BF3E9E9540 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RelativeCoordinate.h"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativeCoordinate.h"; sourceTree = "SOURCE_ROOT"; }; + 865A30767AAA44DAE7683C8B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SystemStats.h"; path = "../../../../modules/juce_core/system/juce_SystemStats.h"; sourceTree = "SOURCE_ROOT"; }; + 867C3547D1301204924989F9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RelativePoint.cpp"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativePoint.cpp"; sourceTree = "SOURCE_ROOT"; }; + 86AE1EDF78EBEE3B5E25B419 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_JSON.h"; path = "../../../../modules/juce_core/json/juce_JSON.h"; sourceTree = "SOURCE_ROOT"; }; + 86DADC3D8463C21DF2751EA6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_UIViewComponent.h"; path = "../../../../modules/juce_gui_extra/embedding/juce_UIViewComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 86E468DE6556BB2AD76A3D80 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_ProjectContentComponent.cpp"; path = "../../Source/Project/jucer_ProjectContentComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 8702F43110E4CCA5E5F827F5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AppConfig.h; path = ../../JuceLibraryCode/AppConfig.h; sourceTree = "SOURCE_ROOT"; }; + 8803733D62CD6DE90727BCA0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_cryptography.h"; path = "../../../../modules/juce_cryptography/juce_cryptography.h"; sourceTree = "SOURCE_ROOT"; }; + 882E28FED1A99E73B0035FC8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ResizableWindow.h"; path = "../../../../modules/juce_gui_basics/windows/juce_ResizableWindow.h"; sourceTree = "SOURCE_ROOT"; }; + 88EA32274CBB5C3A4ECB9ECA = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_KeyboardFocusTraverser.cpp"; path = "../../../../modules/juce_gui_basics/keyboard/juce_KeyboardFocusTraverser.cpp"; sourceTree = "SOURCE_ROOT"; }; + 8A0E175187B06CE9C368A73B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ProgressBar.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_ProgressBar.cpp"; sourceTree = "SOURCE_ROOT"; }; + 8A5D40E78966BA8B0F8B542A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PathIterator.h"; path = "../../../../modules/juce_graphics/geometry/juce_PathIterator.h"; sourceTree = "SOURCE_ROOT"; }; + 8A9386451AEA0640E55E8869 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AlertWindow.h"; path = "../../../../modules/juce_gui_basics/windows/juce_AlertWindow.h"; sourceTree = "SOURCE_ROOT"; }; + 8B698D4DCFED3BCB6F30D69F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RelativeCoordinatePositioner.h"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativeCoordinatePositioner.h"; sourceTree = "SOURCE_ROOT"; }; + 8C0CDFB36933C81F98328B6D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ScopedValueSetter.h"; path = "../../../../modules/juce_core/containers/juce_ScopedValueSetter.h"; sourceTree = "SOURCE_ROOT"; }; + 8C52A3DDA62A746AA7A68535 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_Main.cpp"; path = "../../Source/Application/jucer_Main.cpp"; sourceTree = "SOURCE_ROOT"; }; + 8D12E5100E73E3B7DAA10261 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_events.h"; path = "../../../../modules/juce_events/juce_events.h"; sourceTree = "SOURCE_ROOT"; }; + 8DDA82E1200B61D3B6C526E8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_graphics.h"; path = "../../../../modules/juce_graphics/juce_graphics.h"; sourceTree = "SOURCE_ROOT"; }; + 8E00CF4CE2305C5CE5B60E37 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TopLevelWindow.h"; path = "../../../../modules/juce_gui_basics/windows/juce_TopLevelWindow.h"; sourceTree = "SOURCE_ROOT"; }; + 8FF39B6B0D9DEB5BBE388A6F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MessageListener.h"; path = "../../../../modules/juce_events/messages/juce_MessageListener.h"; sourceTree = "SOURCE_ROOT"; }; + 9069981E414A631B036CC9AC = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_MainWindow.cpp"; path = "../../Source/Application/jucer_MainWindow.cpp"; sourceTree = "SOURCE_ROOT"; }; + 90BD70D106A80947463BCB1A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_NamedValueSet.cpp"; path = "../../../../modules/juce_core/containers/juce_NamedValueSet.cpp"; sourceTree = "SOURCE_ROOT"; }; + 90FFA0B59771716960A15448 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ListenerList.h"; path = "../../../../modules/juce_events/broadcasters/juce_ListenerList.h"; sourceTree = "SOURCE_ROOT"; }; + 9101B27E4D98157EABCE9B8B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_KeyPressMappingSet.cpp"; path = "../../../../modules/juce_gui_basics/commands/juce_KeyPressMappingSet.cpp"; sourceTree = "SOURCE_ROOT"; }; + 914ADDB50ED7365F08BA91F9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_CodeHelpers.h"; path = "../../Source/Utility/jucer_CodeHelpers.h"; sourceTree = "SOURCE_ROOT"; }; + 915ACCF56213FACAB42B427D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ModifierKeys.h"; path = "../../../../modules/juce_gui_basics/keyboard/juce_ModifierKeys.h"; sourceTree = "SOURCE_ROOT"; }; + 920DA9E20EB14DD7D6139DD5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Colours.h"; path = "../../../../modules/juce_graphics/colour/juce_Colours.h"; sourceTree = "SOURCE_ROOT"; }; + 922DB1DA01DAF63CE86B5E53 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_ProjectTreeViewBase.h"; path = "../../Source/Project/jucer_ProjectTreeViewBase.h"; sourceTree = "SOURCE_ROOT"; }; + 925CC15E1449AED03A1CE4F8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_GraphicsContext.h"; path = "../../../../modules/juce_graphics/contexts/juce_GraphicsContext.h"; sourceTree = "SOURCE_ROOT"; }; + 939B1B2421964EEF71768BC7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OutputStream.cpp"; path = "../../../../modules/juce_core/streams/juce_OutputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; + 93BD6F4BB776E432A4006696 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Identifier.h"; path = "../../../../modules/juce_core/text/juce_Identifier.h"; sourceTree = "SOURCE_ROOT"; }; + 93D03B2BC76998A3BDA747E8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_AudioPluginModule.h"; path = "../../Source/Project/jucer_AudioPluginModule.h"; sourceTree = "SOURCE_ROOT"; }; + 93D165846B65A638F1C25C4C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RectanglePlacement.h"; path = "../../../../modules/juce_graphics/placement/juce_RectanglePlacement.h"; sourceTree = "SOURCE_ROOT"; }; + 943FD0D3066412B00830FD86 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TabbedButtonBar.h"; path = "../../../../modules/juce_gui_basics/layout/juce_TabbedButtonBar.h"; sourceTree = "SOURCE_ROOT"; }; + 951128CA33CCDEF570436B1C = { isa = PBXFileReference; lastKnownFileType = file.icns; name = Icon.icns; path = Icon.icns; sourceTree = "SOURCE_ROOT"; }; + 9539EC08D70D4719A89A4A30 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_gui_extra.mm"; path = "../../../../modules/juce_gui_extra/juce_gui_extra.mm"; sourceTree = "SOURCE_ROOT"; }; + 953ECF85818382C60F49544B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AffineTransform.cpp"; path = "../../../../modules/juce_graphics/geometry/juce_AffineTransform.cpp"; sourceTree = "SOURCE_ROOT"; }; + 95CAB4F09E05FDBAED45812E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MultiTouchMapper.h"; path = "../../../../modules/juce_gui_basics/native/juce_MultiTouchMapper.h"; sourceTree = "SOURCE_ROOT"; }; + 96972221C7D4CB0FCD5C3E2B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ModalComponentManager.cpp"; path = "../../../../modules/juce_gui_basics/components/juce_ModalComponentManager.cpp"; sourceTree = "SOURCE_ROOT"; }; + 96C105A8CFFC54B429A5B822 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DocumentWindow.h"; path = "../../../../modules/juce_gui_basics/windows/juce_DocumentWindow.h"; sourceTree = "SOURCE_ROOT"; }; + 9718703E5D696761B85D25B8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileChooserDialogBox.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileChooserDialogBox.h"; sourceTree = "SOURCE_ROOT"; }; + 971FD8FEAE9A521A6983B8C9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_KeyMappingEditorComponent.h"; path = "../../../../modules/juce_gui_extra/misc/juce_KeyMappingEditorComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 974B862C51DA9A16CBBB3A29 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_ProjectExport_XCode.h"; path = "../../Source/Project Saving/jucer_ProjectExport_XCode.h"; sourceTree = "SOURCE_ROOT"; }; + 986707BA1F2C9F7343BD152F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Files.cpp"; path = "../../../../modules/juce_core/native/juce_android_Files.cpp"; sourceTree = "SOURCE_ROOT"; }; + 988186E582883A70582A40E1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Random.cpp"; path = "../../../../modules/juce_core/maths/juce_Random.cpp"; sourceTree = "SOURCE_ROOT"; }; + 98A79B670CADD4E020130BAF = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ComponentBuilder.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_ComponentBuilder.cpp"; sourceTree = "SOURCE_ROOT"; }; + 98DC0221D9015F760E4613FE = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_UndoableAction.h"; path = "../../../../modules/juce_data_structures/undomanager/juce_UndoableAction.h"; sourceTree = "SOURCE_ROOT"; }; + 990F2A6080B28137CCE2D7B9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Singleton.h"; path = "../../../../modules/juce_core/memory/juce_Singleton.h"; sourceTree = "SOURCE_ROOT"; }; + 99557681178F79E2A803C65C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DrawableShape.cpp"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawableShape.cpp"; sourceTree = "SOURCE_ROOT"; }; + 999BC36BBD71BD4117EFDFC4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BubbleComponent.h"; path = "../../../../modules/juce_gui_basics/misc/juce_BubbleComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 99A9C369D8595E72707E866C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_XmlDocument.h"; path = "../../../../modules/juce_core/xml/juce_XmlDocument.h"; sourceTree = "SOURCE_ROOT"; }; + 99DD90B64BC5CC5FF68FA0C5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_NSViewComponent.h"; path = "../../../../modules/juce_gui_extra/embedding/juce_NSViewComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 9A6FD2E154DA99F96FEA1405 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Timer.h"; path = "../../../../modules/juce_events/timers/juce_Timer.h"; sourceTree = "SOURCE_ROOT"; }; + 9A7E8AF6EFD287AF13B46104 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ToolbarItemPalette.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_ToolbarItemPalette.h"; sourceTree = "SOURCE_ROOT"; }; + 9A9B6F9A13C9F01309CE0698 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ResizableCornerComponent.h"; path = "../../../../modules/juce_gui_basics/layout/juce_ResizableCornerComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 9AEC1D0512CFF7E9173BEE4E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_StringPool.cpp"; path = "../../../../modules/juce_core/text/juce_StringPool.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9B3F6F800DC0AD8C92D70E9A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TableHeaderComponent.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_TableHeaderComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9B9CAD20E1243B4351B4C8D8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_CodeHelpers.cpp"; path = "../../Source/Utility/jucer_CodeHelpers.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9BB612A0BA1E2174488B5D0C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Typeface.h"; path = "../../../../modules/juce_graphics/fonts/juce_Typeface.h"; sourceTree = "SOURCE_ROOT"; }; + 9BD2CA4A6C8DA8FF236F3AF1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ShapeButton.cpp"; path = "../../../../modules/juce_gui_basics/buttons/juce_ShapeButton.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9BDE235186FA9648EEECB373 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_LookAndFeel.cpp"; path = "../../../../modules/juce_gui_basics/lookandfeel/juce_LookAndFeel.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9BFC2FD520814B736535DB8F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_mac_CoreGraphicsContext.h"; path = "../../../../modules/juce_graphics/native/juce_mac_CoreGraphicsContext.h"; sourceTree = "SOURCE_ROOT"; }; + 9C04F9680F82BF279D528688 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_ProjectSaver.h"; path = "../../Source/Project Saving/jucer_ProjectSaver.h"; sourceTree = "SOURCE_ROOT"; }; + 9C9402994B7971876006AEBB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ActionBroadcaster.h"; path = "../../../../modules/juce_events/broadcasters/juce_ActionBroadcaster.h"; sourceTree = "SOURCE_ROOT"; }; + 9CA825B77B8DA7FD318FCF7C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileFilter.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileFilter.h"; sourceTree = "SOURCE_ROOT"; }; + 9D69073057BE050870B38749 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ComponentDragger.cpp"; path = "../../../../modules/juce_gui_basics/mouse/juce_ComponentDragger.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9DE1BC5241C70AF12B327932 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DropShadowEffect.h"; path = "../../../../modules/juce_graphics/effects/juce_DropShadowEffect.h"; sourceTree = "SOURCE_ROOT"; }; + 9E36C30D10A1EF9305E8D663 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PropertiesFile.h"; path = "../../../../modules/juce_data_structures/app_properties/juce_PropertiesFile.h"; sourceTree = "SOURCE_ROOT"; }; + 9EE339FCA2CFDAE060CB8FE6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_CallOutBox.cpp"; path = "../../../../modules/juce_gui_basics/windows/juce_CallOutBox.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9EE5D1C3DFDD31D9D8237541 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ComponentBoundsConstrainer.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_ComponentBoundsConstrainer.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9F26333042DFB93B7DFEC870 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MACAddress.cpp"; path = "../../../../modules/juce_core/network/juce_MACAddress.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9F5483F3EEF0A1E0C71B95A5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ImageButton.cpp"; path = "../../../../modules/juce_gui_basics/buttons/juce_ImageButton.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9F7896DA332F9718CAB6B162 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ReferenceCountedObject.h"; path = "../../../../modules/juce_core/memory/juce_ReferenceCountedObject.h"; sourceTree = "SOURCE_ROOT"; }; + A004A03A932CDECDED29F19C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_XmlElement.cpp"; path = "../../../../modules/juce_core/xml/juce_XmlElement.cpp"; sourceTree = "SOURCE_ROOT"; }; + A071CAC9920625A3707CF949 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_StandardHeader.h"; path = "../../../../modules/juce_core/system/juce_StandardHeader.h"; sourceTree = "SOURCE_ROOT"; }; + A091C05141DDDF64A0735D05 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_WildcardFileFilter.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_WildcardFileFilter.cpp"; sourceTree = "SOURCE_ROOT"; }; + A132B5A63CFEF32407ACA5D7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DrawablePath.h"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawablePath.h"; sourceTree = "SOURCE_ROOT"; }; + A17913CCDA69951BC373F637 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ScopedWriteLock.h"; path = "../../../../modules/juce_core/threads/juce_ScopedWriteLock.h"; sourceTree = "SOURCE_ROOT"; }; + A1B4DCE00B10BF7C59F0E603 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Network.cpp"; path = "../../../../modules/juce_core/native/juce_win32_Network.cpp"; sourceTree = "SOURCE_ROOT"; }; + A1C82396A9A0F9A296AA7E6B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ActiveXControlComponent.h"; path = "../../../../modules/juce_gui_extra/embedding/juce_ActiveXControlComponent.h"; sourceTree = "SOURCE_ROOT"; }; + A1D3838043B605010FB84975 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TreeView.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_TreeView.cpp"; sourceTree = "SOURCE_ROOT"; }; + A1DD0D7A34E118E3117ACAB4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TableListBox.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_TableListBox.cpp"; sourceTree = "SOURCE_ROOT"; }; + A207C9202FF3FDE0C6B273D2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TextButton.cpp"; path = "../../../../modules/juce_gui_basics/buttons/juce_TextButton.cpp"; sourceTree = "SOURCE_ROOT"; }; + A243C85FC2C37FD73F115E67 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BasicNativeHeaders.h"; path = "../../../../modules/juce_core/native/juce_BasicNativeHeaders.h"; sourceTree = "SOURCE_ROOT"; }; + A28743047698F6C02194A218 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ToggleButton.cpp"; path = "../../../../modules/juce_gui_basics/buttons/juce_ToggleButton.cpp"; sourceTree = "SOURCE_ROOT"; }; + A2A081D9DA35B3D1F183C3FE = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_graphics.mm"; path = "../../../../modules/juce_graphics/juce_graphics.mm"; sourceTree = "SOURCE_ROOT"; }; + A37D773DEFB69C248D703F40 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_Windowing.mm"; path = "../../../../modules/juce_gui_basics/native/juce_mac_Windowing.mm"; sourceTree = "SOURCE_ROOT"; }; + A3DB226F40C387078864E68A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_NSViewComponent.mm"; path = "../../../../modules/juce_gui_extra/native/juce_mac_NSViewComponent.mm"; sourceTree = "SOURCE_ROOT"; }; + A4740A64F0FC3BD980BE5D9C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TabbedButtonBar.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_TabbedButtonBar.cpp"; sourceTree = "SOURCE_ROOT"; }; + A485A4F0363775AE730EA0E9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ValueTree.h"; path = "../../../../modules/juce_data_structures/values/juce_ValueTree.h"; sourceTree = "SOURCE_ROOT"; }; + A513D5453FF52483D13BA026 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PropertyPanel.h"; path = "../../../../modules/juce_gui_basics/properties/juce_PropertyPanel.h"; sourceTree = "SOURCE_ROOT"; }; + A5864A527A761F92C237EB7C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ScopedXLock.h"; path = "../../../../modules/juce_events/native/juce_ScopedXLock.h"; sourceTree = "SOURCE_ROOT"; }; + A5D2E5A77E6A67E35440BF3B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileOutputStream.cpp"; path = "../../../../modules/juce_core/files/juce_FileOutputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; + A5E171104E49595BD9485DFD = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_JuceUpdater.h"; path = "../../Source/Application/jucer_JuceUpdater.h"; sourceTree = "SOURCE_ROOT"; }; + A60E4D1A58B70887556782F4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ImageFileFormat.cpp"; path = "../../../../modules/juce_graphics/images/juce_ImageFileFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; + A63DA2EB2FA9E6F88F63A09A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SparseSet.h"; path = "../../../../modules/juce_core/containers/juce_SparseSet.h"; sourceTree = "SOURCE_ROOT"; }; + A6D36E0244150AFBF63C1162 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileChooserDialogBox.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileChooserDialogBox.cpp"; sourceTree = "SOURCE_ROOT"; }; + A6E4200E8939608555935EF3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_StringArray.h"; path = "../../../../modules/juce_core/text/juce_StringArray.h"; sourceTree = "SOURCE_ROOT"; }; + A726B794D536985E1F35525F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Image.h"; path = "../../../../modules/juce_graphics/images/juce_Image.h"; sourceTree = "SOURCE_ROOT"; }; + A8394930355B8BE2F67347F7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Toolbar.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_Toolbar.h"; sourceTree = "SOURCE_ROOT"; }; + A8912DFCDA76B8897A5053CF = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Desktop.cpp"; path = "../../../../modules/juce_gui_basics/components/juce_Desktop.cpp"; sourceTree = "SOURCE_ROOT"; }; + A8DB614600D348C730AC3930 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_GroupComponent.h"; path = "../../../../modules/juce_gui_basics/layout/juce_GroupComponent.h"; sourceTree = "SOURCE_ROOT"; }; + A8F9DE55079FC7F6440CF678 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LeakedObjectDetector.h"; path = "../../../../modules/juce_core/memory/juce_LeakedObjectDetector.h"; sourceTree = "SOURCE_ROOT"; }; + A9F6985D38A1C25F0C75215B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Windowing.cpp"; path = "../../../../modules/juce_gui_basics/native/juce_android_Windowing.cpp"; sourceTree = "SOURCE_ROOT"; }; + AA2D4949BD61CE8B891731E4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DrawableComposite.cpp"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawableComposite.cpp"; sourceTree = "SOURCE_ROOT"; }; + AAA445B64E54BBA12D5E1358 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_osx_ObjCHelpers.h"; path = "../../../../modules/juce_core/native/juce_osx_ObjCHelpers.h"; sourceTree = "SOURCE_ROOT"; }; + AAB313919EE298E25D2EAD19 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TemporaryFile.cpp"; path = "../../../../modules/juce_core/files/juce_TemporaryFile.cpp"; sourceTree = "SOURCE_ROOT"; }; + AACB287C990F7A7C51DE3C5B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ChangeListener.h"; path = "../../../../modules/juce_events/broadcasters/juce_ChangeListener.h"; sourceTree = "SOURCE_ROOT"; }; + AC49F1C1B969FA4F06C77B06 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BorderSize.h"; path = "../../../../modules/juce_graphics/geometry/juce_BorderSize.h"; sourceTree = "SOURCE_ROOT"; }; + ACD82099C2B72FF43539FB4E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_InterprocessConnectionServer.cpp"; path = "../../../../modules/juce_events/interprocess/juce_InterprocessConnectionServer.cpp"; sourceTree = "SOURCE_ROOT"; }; + AD0AB6FA2DE544D6C77E69AC = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_CodeEditorComponent.cpp"; path = "../../../../modules/juce_gui_extra/code_editor/juce_CodeEditorComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + AD3C946C260F68C4AD2B491F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ApplicationProperties.h"; path = "../../../../modules/juce_data_structures/app_properties/juce_ApplicationProperties.h"; sourceTree = "SOURCE_ROOT"; }; + AD44FFB01387088222D0E98F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_KeyMappingEditorComponent.cpp"; path = "../../../../modules/juce_gui_extra/misc/juce_KeyMappingEditorComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + ADDCB0920D467DF2A309A5E3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_ProjectInformationComponent.cpp"; path = "../../Source/Project/jucer_ProjectInformationComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + AE1786BA679872921797AE25 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TreeView.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_TreeView.h"; sourceTree = "SOURCE_ROOT"; }; + AE3E427DBCC8D50E3F356402 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ComponentMovementWatcher.h"; path = "../../../../modules/juce_gui_basics/layout/juce_ComponentMovementWatcher.h"; sourceTree = "SOURCE_ROOT"; }; + AE84254C46407F84EB70A370 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LookAndFeel.h"; path = "../../../../modules/juce_gui_basics/lookandfeel/juce_LookAndFeel.h"; sourceTree = "SOURCE_ROOT"; }; + AEE6CA38BE01F8C61920C203 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_KeyPressMappingSet.h"; path = "../../../../modules/juce_gui_basics/commands/juce_KeyPressMappingSet.h"; sourceTree = "SOURCE_ROOT"; }; + AF34CB5CB61484442764640E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_File.h"; path = "../../../../modules/juce_core/files/juce_File.h"; sourceTree = "SOURCE_ROOT"; }; + AF71B1EBA9D281491F30F42B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Network.cpp"; path = "../../../../modules/juce_core/native/juce_android_Network.cpp"; sourceTree = "SOURCE_ROOT"; }; + AF9D42A4C5359EE904DCAF8E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_WindowsRegistry.h"; path = "../../../../modules/juce_core/misc/juce_WindowsRegistry.h"; sourceTree = "SOURCE_ROOT"; }; + AFAF4EF669407663DCB0F452 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Colour.cpp"; path = "../../../../modules/juce_graphics/colour/juce_Colour.cpp"; sourceTree = "SOURCE_ROOT"; }; + AFDCCE90EAB0DDCE50A5B89A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MouseInputSource.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_MouseInputSource.h"; sourceTree = "SOURCE_ROOT"; }; + AFF72BA2B130F3F9AC029080 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_AudioPluginEditorTemplate.h"; path = "../../Source/BinaryData/jucer_AudioPluginEditorTemplate.h"; sourceTree = "SOURCE_ROOT"; }; + B01CBF496E7C88105DF4B52A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DrawableShape.h"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawableShape.h"; sourceTree = "SOURCE_ROOT"; }; + B1B44E3A7614189E65CB9FBE = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_WaitableEvent.h"; path = "../../../../modules/juce_core/threads/juce_WaitableEvent.h"; sourceTree = "SOURCE_ROOT"; }; + B1C57BEEEFD26639F1ADFC1C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_ios_UIViewComponentPeer.mm"; path = "../../../../modules/juce_gui_basics/native/juce_ios_UIViewComponentPeer.mm"; sourceTree = "SOURCE_ROOT"; }; + B20A5F49C7E6342B71770D18 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SelectedItemSet.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_SelectedItemSet.h"; sourceTree = "SOURCE_ROOT"; }; + B35200B1BC9B12580BAD4D3D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DirectoryIterator.h"; path = "../../../../modules/juce_core/files/juce_DirectoryIterator.h"; sourceTree = "SOURCE_ROOT"; }; + B368804F75C1079C9DE731E3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Range.h"; path = "../../../../modules/juce_core/maths/juce_Range.h"; sourceTree = "SOURCE_ROOT"; }; + B40E8B05F3556B148477324B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MarkerList.h"; path = "../../../../modules/juce_gui_basics/positioning/juce_MarkerList.h"; sourceTree = "SOURCE_ROOT"; }; + B483D960309FAFC193F9CDA2 = { isa = PBXFileReference; lastKnownFileType = image.png; name = "juce_icon.png"; path = "../../Source/BinaryData/juce_icon.png"; sourceTree = "SOURCE_ROOT"; }; + B4AA53EF291A383B3C50048A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_NamedValueSet.h"; path = "../../../../modules/juce_core/containers/juce_NamedValueSet.h"; sourceTree = "SOURCE_ROOT"; }; + B54DB627A7AEB6AD820A0A90 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RelativeRectangle.h"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativeRectangle.h"; sourceTree = "SOURCE_ROOT"; }; + B5C4B75E1E71D9445A1AAEE0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ApplicationCommandInfo.cpp"; path = "../../../../modules/juce_gui_basics/commands/juce_ApplicationCommandInfo.cpp"; sourceTree = "SOURCE_ROOT"; }; + B65C16AB5714B1FBD65AD824 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_EdgeTable.cpp"; path = "../../../../modules/juce_graphics/geometry/juce_EdgeTable.cpp"; sourceTree = "SOURCE_ROOT"; }; + B6C40E843F7E8E7C4768B99E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GZIPDecompressorInputStream.cpp"; path = "../../../../modules/juce_core/zip/juce_GZIPDecompressorInputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; + B6D03F8491E288FD4BC31445 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ColourSelector.h"; path = "../../../../modules/juce_gui_extra/misc/juce_ColourSelector.h"; sourceTree = "SOURCE_ROOT"; }; + B743DC50150100FFA2DE76AD = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_Strings.mm"; path = "../../../../modules/juce_core/native/juce_mac_Strings.mm"; sourceTree = "SOURCE_ROOT"; }; + B79595279502C1A11A4E8C36 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Point.h"; path = "../../../../modules/juce_graphics/geometry/juce_Point.h"; sourceTree = "SOURCE_ROOT"; }; + B7BE4498F5A592AAC43F0C93 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DeletedAtShutdown.h"; path = "../../../../modules/juce_events/messages/juce_DeletedAtShutdown.h"; sourceTree = "SOURCE_ROOT"; }; + B8385E9A644BD3CD94876448 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_ProjectType.h"; path = "../../Source/Project/jucer_ProjectType.h"; sourceTree = "SOURCE_ROOT"; }; + B89AC6F01153CC6E222EE72E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BufferedInputStream.h"; path = "../../../../modules/juce_core/streams/juce_BufferedInputStream.h"; sourceTree = "SOURCE_ROOT"; }; + B8B309972EBB7F07305ACCCA = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SliderPropertyComponent.h"; path = "../../../../modules/juce_gui_basics/properties/juce_SliderPropertyComponent.h"; sourceTree = "SOURCE_ROOT"; }; + B8BEDDA33D5B1613213434F4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MouseCursor.cpp"; path = "../../../../modules/juce_gui_basics/mouse/juce_MouseCursor.cpp"; sourceTree = "SOURCE_ROOT"; }; + B92070A7D5952D560DAD32C4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GZIPCompressorOutputStream.cpp"; path = "../../../../modules/juce_core/zip/juce_GZIPCompressorOutputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; + B945EB1DEE6D684E980B7428 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RectangleList.cpp"; path = "../../../../modules/juce_graphics/geometry/juce_RectangleList.cpp"; sourceTree = "SOURCE_ROOT"; }; + B9F806910507E82E7BFB15E0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MemoryOutputStream.h"; path = "../../../../modules/juce_core/streams/juce_MemoryOutputStream.h"; sourceTree = "SOURCE_ROOT"; }; + BA1E340A922D0D7E543563CF = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AttributedString.cpp"; path = "../../../../modules/juce_graphics/fonts/juce_AttributedString.cpp"; sourceTree = "SOURCE_ROOT"; }; + BA5C7DE347A73A87F687703C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ApplicationCommandTarget.h"; path = "../../../../modules/juce_gui_basics/commands/juce_ApplicationCommandTarget.h"; sourceTree = "SOURCE_ROOT"; }; + BA95268EEE80F9509EC1F76F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileBasedDocument.h"; path = "../../../../modules/juce_gui_extra/documents/juce_FileBasedDocument.h"; sourceTree = "SOURCE_ROOT"; }; + BAC43B20E14A340CCF14119C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_Project.cpp"; path = "../../Source/Project/jucer_Project.cpp"; sourceTree = "SOURCE_ROOT"; }; + BBA6060656F685ED7FA52045 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_TreeViewTypes.h"; path = "../../Source/Project/jucer_TreeViewTypes.h"; sourceTree = "SOURCE_ROOT"; }; + BC17B02633EF1E31024051C2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_CodeDocument.cpp"; path = "../../../../modules/juce_gui_extra/code_editor/juce_CodeDocument.cpp"; sourceTree = "SOURCE_ROOT"; }; + BCAD13352CE76BA81629A6E7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DrawableText.h"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawableText.h"; sourceTree = "SOURCE_ROOT"; }; + BD7C18F07DE633B97B4478E7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PropertyComponent.cpp"; path = "../../../../modules/juce_gui_basics/properties/juce_PropertyComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + BDBE6F06F82DF5C3BFF53B2B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Slider.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_Slider.cpp"; sourceTree = "SOURCE_ROOT"; }; + BDCE974230A7401C0E9D28BB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CallOutBox.h"; path = "../../../../modules/juce_gui_basics/windows/juce_CallOutBox.h"; sourceTree = "SOURCE_ROOT"; }; + BDE24BA8FEAE654645079B84 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Variant.cpp"; path = "../../../../modules/juce_core/containers/juce_Variant.cpp"; sourceTree = "SOURCE_ROOT"; }; + BDEBB0AC32DDA8C16FFE6011 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TooltipClient.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_TooltipClient.h"; sourceTree = "SOURCE_ROOT"; }; + BE90AA37929461DF6F6A9E13 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OldSchoolLookAndFeel.h"; path = "../../../../modules/juce_gui_extra/lookandfeel/juce_OldSchoolLookAndFeel.h"; sourceTree = "SOURCE_ROOT"; }; + BE94248CF8069E6707174CDB = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_JuceUpdater.cpp"; path = "../../Source/Application/jucer_JuceUpdater.cpp"; sourceTree = "SOURCE_ROOT"; }; + BE97579323E97AF084D41476 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DirectoryContentsList.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_DirectoryContentsList.cpp"; sourceTree = "SOURCE_ROOT"; }; + BF171B0762D5550B797869F2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Expression.h"; path = "../../../../modules/juce_core/maths/juce_Expression.h"; sourceTree = "SOURCE_ROOT"; }; + BF92CA3FD8F9A61AE358D151 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ActionBroadcaster.cpp"; path = "../../../../modules/juce_events/broadcasters/juce_ActionBroadcaster.cpp"; sourceTree = "SOURCE_ROOT"; }; + C061E0D3680889C69B1F0E95 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LowLevelGraphicsContext.h"; path = "../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsContext.h"; sourceTree = "SOURCE_ROOT"; }; + C1FDD2DDB01AC8C4DECB2C10 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DrawableImage.cpp"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawableImage.cpp"; sourceTree = "SOURCE_ROOT"; }; + C22E03FEBEB6921978C5612A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ChangeBroadcaster.h"; path = "../../../../modules/juce_events/broadcasters/juce_ChangeBroadcaster.h"; sourceTree = "SOURCE_ROOT"; }; + C2D43E4F571D16F0E9B1E44E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileTreeComponent.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileTreeComponent.h"; sourceTree = "SOURCE_ROOT"; }; + C2ECD077AC4C784A67BC3DDE = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Socket.h"; path = "../../../../modules/juce_core/network/juce_Socket.h"; sourceTree = "SOURCE_ROOT"; }; + C38DFB0C94BBC1CE46A3D4E4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TooltipWindow.h"; path = "../../../../modules/juce_gui_basics/windows/juce_TooltipWindow.h"; sourceTree = "SOURCE_ROOT"; }; + C4718AEAC94D07FEB9DA0312 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Misc.cpp"; path = "../../../../modules/juce_core/native/juce_android_Misc.cpp"; sourceTree = "SOURCE_ROOT"; }; + C48DCD3879352EB40F468B0F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DirectoryContentsList.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_DirectoryContentsList.h"; sourceTree = "SOURCE_ROOT"; }; + C4FA33B08560AD0D000EB498 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileSearchPath.h"; path = "../../../../modules/juce_core/files/juce_FileSearchPath.h"; sourceTree = "SOURCE_ROOT"; }; + C510495DF7602C36F216A50C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_InputSource.h"; path = "../../../../modules/juce_core/streams/juce_InputSource.h"; sourceTree = "SOURCE_ROOT"; }; + C5307BECDD6325DCE92F50FC = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BlowFish.h"; path = "../../../../modules/juce_cryptography/encryption/juce_BlowFish.h"; sourceTree = "SOURCE_ROOT"; }; + C56C7577E65C0BFA449E71FE = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MessageManager.cpp"; path = "../../../../modules/juce_events/messages/juce_MessageManager.cpp"; sourceTree = "SOURCE_ROOT"; }; + C5D5D2FFB030BD43160167EB = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DirectoryIterator.cpp"; path = "../../../../modules/juce_core/files/juce_DirectoryIterator.cpp"; sourceTree = "SOURCE_ROOT"; }; + C5FCECA838D4D12D03929139 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileBrowserComponent.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileBrowserComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + C61E82D93918A611FAFD9E9F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ComponentBoundsConstrainer.h"; path = "../../../../modules/juce_gui_basics/layout/juce_ComponentBoundsConstrainer.h"; sourceTree = "SOURCE_ROOT"; }; + C68355AA4D62939EECAD469E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Random.h"; path = "../../../../modules/juce_core/maths/juce_Random.h"; sourceTree = "SOURCE_ROOT"; }; + C6861DB44A31CE7A3DEFA083 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileInputStream.h"; path = "../../../../modules/juce_core/files/juce_FileInputStream.h"; sourceTree = "SOURCE_ROOT"; }; + C6E46DBD249D9426C95E2235 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ChangeBroadcaster.cpp"; path = "../../../../modules/juce_events/broadcasters/juce_ChangeBroadcaster.cpp"; sourceTree = "SOURCE_ROOT"; }; + C717D2384896547D1CD993F6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DialogWindow.h"; path = "../../../../modules/juce_gui_basics/windows/juce_DialogWindow.h"; sourceTree = "SOURCE_ROOT"; }; + C71A9AF1EC7C5BE8DE2EADBB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PixelFormats.h"; path = "../../../../modules/juce_graphics/colour/juce_PixelFormats.h"; sourceTree = "SOURCE_ROOT"; }; + C7608A3967D9AB9481848F2B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_DocumentEditorComponent.cpp"; path = "../../Source/Application/jucer_DocumentEditorComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + C7B47372A9D5970E3D9A5400 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_GroupInformationComponent.h"; path = "../../Source/Project/jucer_GroupInformationComponent.h"; sourceTree = "SOURCE_ROOT"; }; + C7E19F79947BEFC7DB7A9CE7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GlowEffect.cpp"; path = "../../../../modules/juce_graphics/effects/juce_GlowEffect.cpp"; sourceTree = "SOURCE_ROOT"; }; + C83992DA0BE30EA3CD06EA98 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ProgressBar.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_ProgressBar.h"; sourceTree = "SOURCE_ROOT"; }; + C85B4D62B96F4A44890F20E2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SortedSet.h"; path = "../../../../modules/juce_core/containers/juce_SortedSet.h"; sourceTree = "SOURCE_ROOT"; }; + C90C66C5727759D5CBD5FB07 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AbstractFifo.cpp"; path = "../../../../modules/juce_core/containers/juce_AbstractFifo.cpp"; sourceTree = "SOURCE_ROOT"; }; + C9871C46DEDD05103443DC33 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_NewLine.h"; path = "../../../../modules/juce_core/text/juce_NewLine.h"; sourceTree = "SOURCE_ROOT"; }; + CBE0B96838EE76C9CB8E1230 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ColourGradient.cpp"; path = "../../../../modules/juce_graphics/colour/juce_ColourGradient.cpp"; sourceTree = "SOURCE_ROOT"; }; + CC63B9EC2E95FD4AF7608D8E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CharacterFunctions.h"; path = "../../../../modules/juce_core/text/juce_CharacterFunctions.h"; sourceTree = "SOURCE_ROOT"; }; + CD3216F23C7B273B010A8D12 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CustomTypeface.h"; path = "../../../../modules/juce_graphics/fonts/juce_CustomTypeface.h"; sourceTree = "SOURCE_ROOT"; }; + CF6C8BD0DA3D8CD4E99EBADA = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = WebKit.framework; path = System/Library/Frameworks/WebKit.framework; sourceTree = SDKROOT; }; + CF8011B3C67B609032974DA5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_NewCppFileTemplate.cpp"; path = "../../Source/BinaryData/jucer_NewCppFileTemplate.cpp"; sourceTree = "SOURCE_ROOT"; }; + D00F311BFC3C2625C457CB9B = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Carbon.framework; path = System/Library/Frameworks/Carbon.framework; sourceTree = SDKROOT; }; + D1F9B0E9F5D54FE48BEB46EA = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = System/Library/Frameworks/Cocoa.framework; sourceTree = SDKROOT; }; + E5D6C36496F5BC84D7213BE8 = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = System/Library/Frameworks/QuartzCore.framework; sourceTree = SDKROOT; }; + E96597BBC6A98255B51B94DC = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = IOKit.framework; path = System/Library/Frameworks/IOKit.framework; sourceTree = SDKROOT; }; + 25F52316D256B4534BED16D1 = { isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Introjucer.app; sourceTree = "BUILT_PRODUCTS_DIR"; }; + 9BC8AE609A07657CEF587548 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_StoredSettings.h"; path = "../../Source/Utility/jucer_StoredSettings.h"; sourceTree = "SOURCE_ROOT"; }; + BF3CEF080FA013E2778DCE90 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_Project.h"; path = "../../Source/Project/jucer_Project.h"; sourceTree = "SOURCE_ROOT"; }; + C8A229ACD244F402C57286CD = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_ProjectExport_MSVC.h"; path = "../../Source/Project Saving/jucer_ProjectExport_MSVC.h"; sourceTree = "SOURCE_ROOT"; }; + C9616830BB2474066AC8C910 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_ResourceFile.h"; path = "../../Source/Project Saving/jucer_ResourceFile.h"; sourceTree = "SOURCE_ROOT"; }; + C9DCA94BF8A4C583E5392755 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MultiTimer.cpp"; path = "../../../../modules/juce_events/timers/juce_MultiTimer.cpp"; sourceTree = "SOURCE_ROOT"; }; + CA62F9F7C5F0D77D8E33D91F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SplashScreen.h"; path = "../../../../modules/juce_gui_extra/misc/juce_SplashScreen.h"; sourceTree = "SOURCE_ROOT"; }; + CB36CD7F57D0F4231DC98686 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Message.h"; path = "../../../../modules/juce_events/messages/juce_Message.h"; sourceTree = "SOURCE_ROOT"; }; + CB48495010366C2E371BEFDB = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_SystemStats.cpp"; path = "../../../../modules/juce_core/system/juce_SystemStats.cpp"; sourceTree = "SOURCE_ROOT"; }; + CC3F5263B16932FF4E74B9D8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CodeEditorComponent.h"; path = "../../../../modules/juce_gui_extra/code_editor/juce_CodeEditorComponent.h"; sourceTree = "SOURCE_ROOT"; }; + CD140A1C0161176682F6CA29 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ResizableWindow.cpp"; path = "../../../../modules/juce_gui_basics/windows/juce_ResizableWindow.cpp"; sourceTree = "SOURCE_ROOT"; }; + CD8F40A9EF6ECAD083543974 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_WildcardFileFilter.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_WildcardFileFilter.h"; sourceTree = "SOURCE_ROOT"; }; + CDCAF0EC777DA2884AEB2B59 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Label.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_Label.cpp"; sourceTree = "SOURCE_ROOT"; }; + CDDF5BDC75277F7B83A38885 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PropertySet.cpp"; path = "../../../../modules/juce_core/containers/juce_PropertySet.cpp"; sourceTree = "SOURCE_ROOT"; }; + CDF8F65F9079B2C14A740F0F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ImageButton.h"; path = "../../../../modules/juce_gui_basics/buttons/juce_ImageButton.h"; sourceTree = "SOURCE_ROOT"; }; + CE1DFE4E3908943656E180AD = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_UnitTest.cpp"; path = "../../../../modules/juce_core/unit_tests/juce_UnitTest.cpp"; sourceTree = "SOURCE_ROOT"; }; + CF0615A1AF1A514A60322B50 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MouseCursor.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_MouseCursor.h"; sourceTree = "SOURCE_ROOT"; }; + D0F1614CC861E8E0B59B7A06 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Messaging.cpp"; path = "../../../../modules/juce_events/native/juce_linux_Messaging.cpp"; sourceTree = "SOURCE_ROOT"; }; + D10D51A0A2D63F38B4D86A60 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_ResourceFile.cpp"; path = "../../Source/Project Saving/jucer_ResourceFile.cpp"; sourceTree = "SOURCE_ROOT"; }; + D141433D3FE81F20490DE928 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Desktop.h"; path = "../../../../modules/juce_gui_basics/components/juce_Desktop.h"; sourceTree = "SOURCE_ROOT"; }; + D253F74B7F5734984E568CA7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Files.cpp"; path = "../../../../modules/juce_core/native/juce_linux_Files.cpp"; sourceTree = "SOURCE_ROOT"; }; + D2F1CF252F7EC62B35A21CB6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DropShadowEffect.cpp"; path = "../../../../modules/juce_graphics/effects/juce_DropShadowEffect.cpp"; sourceTree = "SOURCE_ROOT"; }; + D2F80DA0946A5EE01FC016CA = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CharPointer_UTF32.h"; path = "../../../../modules/juce_core/text/juce_CharPointer_UTF32.h"; sourceTree = "SOURCE_ROOT"; }; + D376B9B54EC944E766AFEC45 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PopupMenu.cpp"; path = "../../../../modules/juce_gui_basics/menus/juce_PopupMenu.cpp"; sourceTree = "SOURCE_ROOT"; }; + D4697A0232AECE5DAC5E332E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ChoicePropertyComponent.cpp"; path = "../../../../modules/juce_gui_basics/properties/juce_ChoicePropertyComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + D4E56676E2EF83404EDCBA8C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TextEditor.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_TextEditor.cpp"; sourceTree = "SOURCE_ROOT"; }; + D4F2D42C58F4D86E00E76F31 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ApplicationCommandID.h"; path = "../../../../modules/juce_gui_basics/commands/juce_ApplicationCommandID.h"; sourceTree = "SOURCE_ROOT"; }; + D503780AB98993E8F0BA1311 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ImageComponent.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_ImageComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + D5057D7B18ABD5E810A6F830 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_DirectWriteTypeface.cpp"; path = "../../../../modules/juce_graphics/native/juce_win32_DirectWriteTypeface.cpp"; sourceTree = "SOURCE_ROOT"; }; + D526C38D581425949BA0E4AC = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_FilePreviewComponent.h"; path = "../../Source/Application/jucer_FilePreviewComponent.h"; sourceTree = "SOURCE_ROOT"; }; + D53B54D1786A1FFC024BF064 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_cryptography.mm"; path = "../../../../modules/juce_cryptography/juce_cryptography.mm"; sourceTree = "SOURCE_ROOT"; }; + D5A6D00DEFDC650AF432A698 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Initialisation.h"; path = "../../../../modules/juce_gui_basics/application/juce_Initialisation.h"; sourceTree = "SOURCE_ROOT"; }; + D678882D133090214AF681BC = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ThreadLocalValue.h"; path = "../../../../modules/juce_core/threads/juce_ThreadLocalValue.h"; sourceTree = "SOURCE_ROOT"; }; + D6C91E2BF537F75A80F5C1DB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ListBox.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_ListBox.h"; sourceTree = "SOURCE_ROOT"; }; + D75EAC16FAECCC51E3669193 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ApplicationCommandInfo.h"; path = "../../../../modules/juce_gui_basics/commands/juce_ApplicationCommandInfo.h"; sourceTree = "SOURCE_ROOT"; }; + D780ED33573AED5AD383A036 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CaretComponent.h"; path = "../../../../modules/juce_gui_basics/keyboard/juce_CaretComponent.h"; sourceTree = "SOURCE_ROOT"; }; + D782DA091AD3ECE158FC6A5F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ButtonPropertyComponent.h"; path = "../../../../modules/juce_gui_basics/properties/juce_ButtonPropertyComponent.h"; sourceTree = "SOURCE_ROOT"; }; + D7A7F1AA9F313B0CCAAA73A0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MathsFunctions.h"; path = "../../../../modules/juce_core/maths/juce_MathsFunctions.h"; sourceTree = "SOURCE_ROOT"; }; + D800DE818BEDBF4579D15B1D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_AppleRemote.mm"; path = "../../../../modules/juce_gui_extra/native/juce_mac_AppleRemote.mm"; sourceTree = "SOURCE_ROOT"; }; + D926E13AB5AD647A7A00F486 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Network.cpp"; path = "../../../../modules/juce_core/native/juce_linux_Network.cpp"; sourceTree = "SOURCE_ROOT"; }; + D9342535EA61901A1AD816C6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_WebBrowserComponent.cpp"; path = "../../../../modules/juce_gui_extra/native/juce_linux_WebBrowserComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + D95D7B49EC6C6BDCB5A1B988 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_ios_MessageManager.mm"; path = "../../../../modules/juce_events/native/juce_ios_MessageManager.mm"; sourceTree = "SOURCE_ROOT"; }; + D9B077E2ECDDA94961E134D7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_StringPairArray.h"; path = "../../../../modules/juce_core/text/juce_StringPairArray.h"; sourceTree = "SOURCE_ROOT"; }; + D9E59DE07A815AB303A297D9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_data_structures.mm"; path = "../../../../modules/juce_data_structures/juce_data_structures.mm"; sourceTree = "SOURCE_ROOT"; }; + DB20268A566DABEAE3F2CBEE = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RectanglePlacement.cpp"; path = "../../../../modules/juce_graphics/placement/juce_RectanglePlacement.cpp"; sourceTree = "SOURCE_ROOT"; }; + DB876F7873F42DC685A58CA7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_JPEGLoader.cpp"; path = "../../../../modules/juce_graphics/image_formats/juce_JPEGLoader.cpp"; sourceTree = "SOURCE_ROOT"; }; + DC5E7FF30B01118F6DAEC38F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Time.cpp"; path = "../../../../modules/juce_core/time/juce_Time.cpp"; sourceTree = "SOURCE_ROOT"; }; + DCCB75165B7C73A589498E87 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Windowing.cpp"; path = "../../../../modules/juce_gui_basics/native/juce_linux_Windowing.cpp"; sourceTree = "SOURCE_ROOT"; }; + DD00494140C86144306A9356 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Array.h"; path = "../../../../modules/juce_core/containers/juce_Array.h"; sourceTree = "SOURCE_ROOT"; }; + DD2494D5F1C081898D616AF5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_KeyListener.cpp"; path = "../../../../modules/juce_gui_basics/keyboard/juce_KeyListener.cpp"; sourceTree = "SOURCE_ROOT"; }; + DD985A60FB76E976AF91852D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SHA256.h"; path = "../../../../modules/juce_cryptography/hashing/juce_SHA256.h"; sourceTree = "SOURCE_ROOT"; }; + DE40B42B57F29C650CB7F2AD = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RecentlyOpenedFilesList.h"; path = "../../../../modules/juce_gui_extra/misc/juce_RecentlyOpenedFilesList.h"; sourceTree = "SOURCE_ROOT"; }; + DE5F3C9EF6BFFDE73AF9E7FC = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DirectoryContentsDisplayComponent.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_DirectoryContentsDisplayComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + DE8DF5D263F40F65581CFDE4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ChildProcess.cpp"; path = "../../../../modules/juce_core/threads/juce_ChildProcess.cpp"; sourceTree = "SOURCE_ROOT"; }; + DEF579B1433EB8DEE7AB50F8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Drawable.cpp"; path = "../../../../modules/juce_gui_basics/drawables/juce_Drawable.cpp"; sourceTree = "SOURCE_ROOT"; }; + DF7BB5B6B394EDEEF5F5B4B8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CallbackMessage.h"; path = "../../../../modules/juce_events/messages/juce_CallbackMessage.h"; sourceTree = "SOURCE_ROOT"; }; + DFC6364D81D9C60BD4CA9D12 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RelativeTime.cpp"; path = "../../../../modules/juce_core/time/juce_RelativeTime.cpp"; sourceTree = "SOURCE_ROOT"; }; + E07C56267CBB46FC44EF2026 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Image.cpp"; path = "../../../../modules/juce_graphics/images/juce_Image.cpp"; sourceTree = "SOURCE_ROOT"; }; + E1C16C872E34BCB144B469F9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_EdgeTable.h"; path = "../../../../modules/juce_graphics/geometry/juce_EdgeTable.h"; sourceTree = "SOURCE_ROOT"; }; + E27F0860F27023BAA9798B46 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Rectangle.h"; path = "../../../../modules/juce_graphics/geometry/juce_Rectangle.h"; sourceTree = "SOURCE_ROOT"; }; + E284B565DBD647DC0830D23B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ButtonPropertyComponent.cpp"; path = "../../../../modules/juce_gui_basics/properties/juce_ButtonPropertyComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + E2C1C995D554A3F0A363CE58 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Thread.h"; path = "../../../../modules/juce_core/threads/juce_Thread.h"; sourceTree = "SOURCE_ROOT"; }; + E2DBA3307837B64AFCCD8F8D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_File.cpp"; path = "../../../../modules/juce_core/files/juce_File.cpp"; sourceTree = "SOURCE_ROOT"; }; + E3FF16862AA1B2F943DC616C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ImageCache.cpp"; path = "../../../../modules/juce_graphics/images/juce_ImageCache.cpp"; sourceTree = "SOURCE_ROOT"; }; + E446FFE889CD490FDE3F0F2B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ThreadWithProgressWindow.cpp"; path = "../../../../modules/juce_gui_basics/windows/juce_ThreadWithProgressWindow.cpp"; sourceTree = "SOURCE_ROOT"; }; + E4E74B2BC3F3CB5A4F4DC55E = { isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_gui_basics/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + E530742870F07704E9616358 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ToolbarItemComponent.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_ToolbarItemComponent.h"; sourceTree = "SOURCE_ROOT"; }; + E54D0994D31E20A0A05EBA2B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SystemTrayIconComponent.h"; path = "../../../../modules/juce_gui_extra/misc/juce_SystemTrayIconComponent.h"; sourceTree = "SOURCE_ROOT"; }; + E570E57CC1FCEF78B54A7084 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileOutputStream.h"; path = "../../../../modules/juce_core/files/juce_FileOutputStream.h"; sourceTree = "SOURCE_ROOT"; }; + E60E28D1B7491047DEA236AE = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_ProjectContentComponent.h"; path = "../../Source/Project/jucer_ProjectContentComponent.h"; sourceTree = "SOURCE_ROOT"; }; + E642193A9990C48CFB6479A9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileListComponent.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileListComponent.h"; sourceTree = "SOURCE_ROOT"; }; + E654E3A3CD45A888C5F773DF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MenuBarModel.h"; path = "../../../../modules/juce_gui_basics/menus/juce_MenuBarModel.h"; sourceTree = "SOURCE_ROOT"; }; + E65A820D34BF39478B7C5925 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_DocumentEditorComponent.h"; path = "../../Source/Application/jucer_DocumentEditorComponent.h"; sourceTree = "SOURCE_ROOT"; }; + E6F5CEC32EDC917B054467EF = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ReadWriteLock.cpp"; path = "../../../../modules/juce_core/threads/juce_ReadWriteLock.cpp"; sourceTree = "SOURCE_ROOT"; }; + E70CA21960A64CCB835725FF = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_ProjectType.cpp"; path = "../../Source/Project/jucer_ProjectType.cpp"; sourceTree = "SOURCE_ROOT"; }; + E73C7E17116F6085765622E3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Drawable.h"; path = "../../../../modules/juce_gui_basics/drawables/juce_Drawable.h"; sourceTree = "SOURCE_ROOT"; }; + E7A4604F766ABC8BE26C94A1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RelativeParallelogram.cpp"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativeParallelogram.cpp"; sourceTree = "SOURCE_ROOT"; }; + E7B6A0CBA0D27A095E83F5B7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_WebBrowserComponent.cpp"; path = "../../../../modules/juce_gui_extra/native/juce_win32_WebBrowserComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + E7D09B860F4D4A13D4312C38 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PropertiesFile.cpp"; path = "../../../../modules/juce_data_structures/app_properties/juce_PropertiesFile.cpp"; sourceTree = "SOURCE_ROOT"; }; + E7E122AE104E79BB641B07B3 = { isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_data_structures/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + E7E1C4F416CFA44BE7DD1A74 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_KeyboardFocusTraverser.h"; path = "../../../../modules/juce_gui_basics/keyboard/juce_KeyboardFocusTraverser.h"; sourceTree = "SOURCE_ROOT"; }; + E7E1D60BC7AEF79AA7B65B7C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_String.cpp"; path = "../../../../modules/juce_core/text/juce_String.cpp"; sourceTree = "SOURCE_ROOT"; }; + E82C9EF1A74D867BBFF2090D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RSAKey.cpp"; path = "../../../../modules/juce_cryptography/encryption/juce_RSAKey.cpp"; sourceTree = "SOURCE_ROOT"; }; + E99F5A31373E9BDEAC40792F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_FileChooser.cpp"; path = "../../../../modules/juce_gui_basics/native/juce_android_FileChooser.cpp"; sourceTree = "SOURCE_ROOT"; }; + E9B8C3CA480AE94BEA852EA9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_ios_Windowing.mm"; path = "../../../../modules/juce_gui_basics/native/juce_ios_Windowing.mm"; sourceTree = "SOURCE_ROOT"; }; + EA0D43AB5F47506D5CDA81BB = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MultiDocumentPanel.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_MultiDocumentPanel.cpp"; sourceTree = "SOURCE_ROOT"; }; + EA73C136F52502AA11DB7E15 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MD5.cpp"; path = "../../../../modules/juce_cryptography/hashing/juce_MD5.cpp"; sourceTree = "SOURCE_ROOT"; }; + EBF7B2DEDAEEB28C1873F580 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_URL.h"; path = "../../../../modules/juce_core/network/juce_URL.h"; sourceTree = "SOURCE_ROOT"; }; + EC0AF83CFFFCCDE438BCAF25 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TargetPlatform.h"; path = "../../../../modules/juce_core/system/juce_TargetPlatform.h"; sourceTree = "SOURCE_ROOT"; }; + EC4F3034A642D9E037570D4F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_UnitTest.h"; path = "../../../../modules/juce_core/unit_tests/juce_UnitTest.h"; sourceTree = "SOURCE_ROOT"; }; + ED94D4B502DF310763C6CE23 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_WebBrowserComponent.mm"; path = "../../../../modules/juce_gui_extra/native/juce_mac_WebBrowserComponent.mm"; sourceTree = "SOURCE_ROOT"; }; + EDAC762083E327A80CE9D260 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TextPropertyComponent.cpp"; path = "../../../../modules/juce_gui_basics/properties/juce_TextPropertyComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + EE2B934B45132C7D37FBA04D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OwnedArray.h"; path = "../../../../modules/juce_core/containers/juce_OwnedArray.h"; sourceTree = "SOURCE_ROOT"; }; + EE690110171E1648FF2118B8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_Application.h"; path = "../../Source/Application/jucer_Application.h"; sourceTree = "SOURCE_ROOT"; }; + EE775C35756DC364728D4675 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DynamicObject.cpp"; path = "../../../../modules/juce_core/containers/juce_DynamicObject.cpp"; sourceTree = "SOURCE_ROOT"; }; + EE8504403714A7CE606B5F34 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Logger.h"; path = "../../../../modules/juce_core/logging/juce_Logger.h"; sourceTree = "SOURCE_ROOT"; }; + F03E2BDD36E6F4F53AB767A8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_Headers.h"; path = "../../Source/jucer_Headers.h"; sourceTree = "SOURCE_ROOT"; }; + F07EA5078D6BB60B698F5E12 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_SystemStats.cpp"; path = "../../../../modules/juce_core/native/juce_android_SystemStats.cpp"; sourceTree = "SOURCE_ROOT"; }; + F08EB921DB62255A4B6DE85A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RectangleList.h"; path = "../../../../modules/juce_graphics/geometry/juce_RectangleList.h"; sourceTree = "SOURCE_ROOT"; }; + F100CFF192886B7699632A62 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_Network.mm"; path = "../../../../modules/juce_core/native/juce_mac_Network.mm"; sourceTree = "SOURCE_ROOT"; }; + F1163B7856FDABA413A88D90 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_NewFileWizard.cpp"; path = "../../Source/Project/jucer_NewFileWizard.cpp"; sourceTree = "SOURCE_ROOT"; }; + F1164F66F799CEA74174328A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Logger.cpp"; path = "../../../../modules/juce_core/logging/juce_Logger.cpp"; sourceTree = "SOURCE_ROOT"; }; + F1974B6EDBA502BC36671D7C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ModifierKeys.cpp"; path = "../../../../modules/juce_gui_basics/keyboard/juce_ModifierKeys.cpp"; sourceTree = "SOURCE_ROOT"; }; + F1BEFCAF20EA392DE762B876 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_String.h"; path = "../../../../modules/juce_core/text/juce_String.h"; sourceTree = "SOURCE_ROOT"; }; + F2499004037A1C1D8FEE1FD6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ResizableEdgeComponent.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_ResizableEdgeComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + F2759373EAAC820F17409939 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CriticalSection.h"; path = "../../../../modules/juce_core/threads/juce_CriticalSection.h"; sourceTree = "SOURCE_ROOT"; }; + F2C7DE572E29A3D62EFB40F8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RelativeCoordinate.cpp"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativeCoordinate.cpp"; sourceTree = "SOURCE_ROOT"; }; + F2FA27430D90E92F0C9EBEDF = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_FilePreviewComponent.cpp"; path = "../../Source/Application/jucer_FilePreviewComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + F406A0F41B2C7A512FDBC9E0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileLogger.cpp"; path = "../../../../modules/juce_core/logging/juce_FileLogger.cpp"; sourceTree = "SOURCE_ROOT"; }; + F40F5C63CA1098C21B96C80F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_InputStream.cpp"; path = "../../../../modules/juce_core/streams/juce_InputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; + F591F5E5E162D4667AC26419 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_JSON.cpp"; path = "../../../../modules/juce_core/json/juce_JSON.cpp"; sourceTree = "SOURCE_ROOT"; }; + F5C02C740A62090A9E9BD25B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DrawableComposite.h"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawableComposite.h"; sourceTree = "SOURCE_ROOT"; }; + F5C453F570A28FD5FA662C1E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileFilter.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileFilter.cpp"; sourceTree = "SOURCE_ROOT"; }; + F6938A1377A2609D6AEDC120 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RelativeTime.h"; path = "../../../../modules/juce_core/time/juce_RelativeTime.h"; sourceTree = "SOURCE_ROOT"; }; + F6B1C18DDF8DFF1B3767F018 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ArrowButton.cpp"; path = "../../../../modules/juce_gui_basics/buttons/juce_ArrowButton.cpp"; sourceTree = "SOURCE_ROOT"; }; + F6FF660331F6CBF9FFC85E88 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TableHeaderComponent.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_TableHeaderComponent.h"; sourceTree = "SOURCE_ROOT"; }; + F71AF6D2DF3E652F8B51EBAB = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_ProjectExporter.cpp"; path = "../../Source/Project Saving/jucer_ProjectExporter.cpp"; sourceTree = "SOURCE_ROOT"; }; + F797071D88542C813CF7222A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_Module.cpp"; path = "../../Source/Project/jucer_Module.cpp"; sourceTree = "SOURCE_ROOT"; }; + F7A91434FEFBE9AC130CD814 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_NewProjectWizard.h"; path = "../../Source/Project/jucer_NewProjectWizard.h"; sourceTree = "SOURCE_ROOT"; }; + F7D7A41EFE97269721C61BF4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FillType.h"; path = "../../../../modules/juce_graphics/colour/juce_FillType.h"; sourceTree = "SOURCE_ROOT"; }; + F7E829D0B21B9C1B4790A245 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_UndoManager.cpp"; path = "../../../../modules/juce_data_structures/undomanager/juce_UndoManager.cpp"; sourceTree = "SOURCE_ROOT"; }; + F7EAAE1A1BD13685BFF6176E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ZipFile.cpp"; path = "../../../../modules/juce_core/zip/juce_ZipFile.cpp"; sourceTree = "SOURCE_ROOT"; }; + F8AC12B589FCB90E66D84729 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_InterprocessConnection.h"; path = "../../../../modules/juce_events/interprocess/juce_InterprocessConnection.h"; sourceTree = "SOURCE_ROOT"; }; + F8D0F7C0A19B4ADB58454F16 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ScrollBar.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_ScrollBar.cpp"; sourceTree = "SOURCE_ROOT"; }; + F92A6000284C0FDA0A4845CA = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PopupMenu.h"; path = "../../../../modules/juce_gui_basics/menus/juce_PopupMenu.h"; sourceTree = "SOURCE_ROOT"; }; + F94ACCC426AB439B871699E3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_TreeViewTypes.cpp"; path = "../../Source/Project/jucer_TreeViewTypes.cpp"; sourceTree = "SOURCE_ROOT"; }; + F994D79D564B5F8D06E6766E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TextPropertyComponent.h"; path = "../../../../modules/juce_gui_basics/properties/juce_TextPropertyComponent.h"; sourceTree = "SOURCE_ROOT"; }; + F9D77BAA08889D69E0C43F25 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_SystemTrayIconComponent.cpp"; path = "../../../../modules/juce_gui_extra/misc/juce_SystemTrayIconComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + FAC03FFD051FA5B34EE9BA15 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DeletedAtShutdown.cpp"; path = "../../../../modules/juce_events/messages/juce_DeletedAtShutdown.cpp"; sourceTree = "SOURCE_ROOT"; }; + FACB4278128DD3C2E2F488DA = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_StringPairArray.cpp"; path = "../../../../modules/juce_core/text/juce_StringPairArray.cpp"; sourceTree = "SOURCE_ROOT"; }; + FB1B309BB58E2C3F8C8E78F6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_XmlDocument.cpp"; path = "../../../../modules/juce_core/xml/juce_XmlDocument.cpp"; sourceTree = "SOURCE_ROOT"; }; + FBC98F0857AE7FCBD70C7C5C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DrawableImage.h"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawableImage.h"; sourceTree = "SOURCE_ROOT"; }; + FC7617617F95E4443AA568ED = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_mac_ObjCSuffix.h"; path = "../../../../modules/juce_core/native/juce_mac_ObjCSuffix.h"; sourceTree = "SOURCE_ROOT"; }; + FDD33A6837774904810208D5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Component.h"; path = "../../../../modules/juce_gui_basics/components/juce_Component.h"; sourceTree = "SOURCE_ROOT"; }; + FE283C418E7E545626881FF0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MultiDocumentPanel.h"; path = "../../../../modules/juce_gui_basics/layout/juce_MultiDocumentPanel.h"; sourceTree = "SOURCE_ROOT"; }; + FE90AF2B2BC1106C0D4056BD = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PNGLoader.cpp"; path = "../../../../modules/juce_graphics/image_formats/juce_PNGLoader.cpp"; sourceTree = "SOURCE_ROOT"; }; + FF04AE9E4F2AAA29AC549461 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_URL.cpp"; path = "../../../../modules/juce_core/network/juce_URL.cpp"; sourceTree = "SOURCE_ROOT"; }; + FF10E9B389909FB45E229D5B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ComboBox.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_ComboBox.h"; sourceTree = "SOURCE_ROOT"; }; + FF1F954094B14C1900C9495D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_posix_SharedCode.h"; path = "../../../../modules/juce_core/native/juce_posix_SharedCode.h"; sourceTree = "SOURCE_ROOT"; }; + ACBAFA7D92DD82AD44ABE68A = { isa = PBXGroup; children = ( + EE690110171E1648FF2118B8, + 23A8DE16C0CDB8EED18B008B, + 0400CB0E056A1D840304D2DE, + 2EEB1C074162F363C6599282, + 6E6140969908E7619F858740, + C7608A3967D9AB9481848F2B, + E65A820D34BF39478B7C5925, + F2FA27430D90E92F0C9EBEDF, + D526C38D581425949BA0E4AC, + F03E2BDD36E6F4F53AB767A8, + BE94248CF8069E6707174CDB, + A5E171104E49595BD9485DFD, + 8C52A3DDA62A746AA7A68535, + 9069981E414A631B036CC9AC, + 2CD34A70B4032C0426F7AA10, + 2247EE920DF0610CAF9F4513, + 563091B0916AD9AAA36C7DC5 ); name = Application; sourceTree = ""; }; + 891F84627A03FA733F37A199 = { isa = PBXGroup; children = ( + 93D03B2BC76998A3BDA747E8, + 6FA01AEDB9DB70FD1EA6D380, + C7B47372A9D5970E3D9A5400, + F797071D88542C813CF7222A, + 7211101FFA28400ADBB1D47A, + F1163B7856FDABA413A88D90, + 5852830ECC222BA36A30EC20, + 69A5D13490A62DAE9A7D5A22, + F7A91434FEFBE9AC130CD814, + BAC43B20E14A340CCF14119C, + BF3CEF080FA013E2778DCE90, + 86E468DE6556BB2AD76A3D80, + E60E28D1B7491047DEA236AE, + ADDCB0920D467DF2A309A5E3, + 2CFEE0E15C0ABF07EFE27FBF, + 4BAF0975F0958432B17D0D41, + 922DB1DA01DAF63CE86B5E53, + E70CA21960A64CCB835725FF, + B8385E9A644BD3CD94876448, + F94ACCC426AB439B871699E3, + BBA6060656F685ED7FA52045 ); name = Project; sourceTree = ""; }; + E345840128627D533DF908AC = { isa = PBXGroup; children = ( + 6E7353DFEA8825B515049ABB, + 05076CDF1511A5F8A8E18F1D, + C8A229ACD244F402C57286CD, + 974B862C51DA9A16CBBB3A29, + F71AF6D2DF3E652F8B51EBAB, + 35CB48D497F35BF3F6998F5D, + 9C04F9680F82BF279D528688, + D10D51A0A2D63F38B4D86A60, + C9616830BB2474066AC8C910 ); name = "Project Saving"; sourceTree = ""; }; + D93DED1F5F1B0E49E10A6760 = { isa = PBXGroup; children = ( + 9B9CAD20E1243B4351B4C8D8, + 914ADDB50ED7365F08BA91F9, + 188D03A4247F4BC0539F5C49, + 1729AEDC34001C31B8CC357C, + 553725A0E3A391651ED1731E, + 47DD50A5A9091F9900E0EAD9, + 820291543BF93243B718F0EE, + 0F249640243FBD5717F6ADD9, + 4A41FD3066D0979DB48691E5, + 1AF7EFBE4961C7B6C834BF54, + 1F421199C40092BFEE0658C2, + 631983AA62673015F8D7453B, + 9BC8AE609A07657CEF587548, + 8090981F07A76E465DAAADF4 ); name = Utility; sourceTree = ""; }; + FC22321797D433148500EDDA = { isa = PBXGroup; children = ( + 2E680E2C65684A4272AE079A, + 78CA0E0F336229E2E2F111B0 ); name = "Code Editor"; sourceTree = ""; }; + 88DFD62CB6545EE8CA5C485B = { isa = PBXGroup; children = ( + 5F4F4EAB042F2730F94A1CEA, + 7074AEDE4B0416BC898DD27A, + 0075C5208947159AF2802F3B, + AFF72BA2B130F3F9AC029080, + 65F4749184C84C2FDBB4C305, + 03D3053EDE47FED1919C6674, + 18D9EBA1DAE45EEF81FD5C8F, + 0FC137539030B1A9152F680C, + CF8011B3C67B609032974DA5, + 53151B683E11F420203E61C2, + 087959CCC447DA59FBD5787E, + 7DF304ACC22704A1B2454B68, + B483D960309FAFC193F9CDA2 ); name = BinaryData; sourceTree = ""; }; + D3109994DA6AD871BE85C4E2 = { isa = PBXGroup; children = ( + ACBAFA7D92DD82AD44ABE68A, + 891F84627A03FA733F37A199, + E345840128627D533DF908AC, + D93DED1F5F1B0E49E10A6760, + FC22321797D433148500EDDA, + 88DFD62CB6545EE8CA5C485B ); name = "The Introjucer"; sourceTree = ""; }; + ED7BB3F297250D7B43B2A536 = { isa = PBXGroup; children = ( + 795AF1D634CA3E6FA899E0B0, + CC63B9EC2E95FD4AF7608D8E, + 3FAFD16944A6674164D23914, + 51C6A6EB22F80FFF0A2800B3, + D2F80DA0946A5EE01FC016CA, + 1BE0A20FB2284A4DDC3A359E, + 52D8EA5A16D441BE77242E9D, + 93BD6F4BB776E432A4006696, + 04F670E070D31FB66C7DCAEB, + 025C33B85E0CCD3E238D4BDC, + C9871C46DEDD05103443DC33, + E7E1D60BC7AEF79AA7B65B7C, + F1BEFCAF20EA392DE762B876, + 261EFE631AA08FB2651B78C7, + A6E4200E8939608555935EF3, + FACB4278128DD3C2E2F488DA, + D9B077E2ECDDA94961E134D7, + 9AEC1D0512CFF7E9173BEE4E, + 31ACA83BF72B34828ADA1F3F ); name = text; sourceTree = ""; }; + F824830BD560E7906A8CD82B = { isa = PBXGroup; children = ( + 61A072FFE3185BDDC42DA144, + 50DBEAC56E34B9909BA9C7AD, + 225414095942818432AAE07D, + BF171B0762D5550B797869F2, + D7A7F1AA9F313B0CCAAA73A0, + 988186E582883A70582A40E1, + C68355AA4D62939EECAD469E, + B368804F75C1079C9DE731E3 ); name = maths; sourceTree = ""; }; + 01C121A5814A16A7CB907FB9 = { isa = PBXGroup; children = ( + 168F5F32F673036DDAEF1D8D, + 1B1A4A48AF3898485E7B1618, + 53CC682B805DD49B6E434A95, + A8F9DE55079FC7F6440CF678, + 2BC28F37C470E4770E479BCD, + 2416644BBABFD1F95EE12792, + 7E45364D59D84EF762F1A928, + 6AA46ED6C6DDD5A7BC72F686, + 9F7896DA332F9718CAB6B162, + 1A1B5A2E9F1DA2122D21F9DF, + 990F2A6080B28137CCE2D7B9, + 6E815592344CAA798C9848BF ); name = memory; sourceTree = ""; }; + 101599FA5E724FC0C78144B3 = { isa = PBXGroup; children = ( + C90C66C5727759D5CBD5FB07, + 66A67F1C25A59167AA729C9C, + DD00494140C86144306A9356, + 6DFAF945FC3A7D0689C5CEC8, + EE775C35756DC364728D4675, + 55F7CE15FA02A9F599A83A58, + 7E3ACAD10381DA0D81093329, + 24CA69C0CC466CD524021099, + 4F88933C6D2AB8A83EB14E16, + 90BD70D106A80947463BCB1A, + B4AA53EF291A383B3C50048A, + EE2B934B45132C7D37FBA04D, + CDDF5BDC75277F7B83A38885, + 2411094E8B601FD897AD24F9, + 37A0A38C2B5825B9A302879C, + 8C0CDFB36933C81F98328B6D, + C85B4D62B96F4A44890F20E2, + A63DA2EB2FA9E6F88F63A09A, + BDE24BA8FEAE654645079B84, + 7ECD37A096E0B99622585950 ); name = containers; sourceTree = ""; }; + 815C2090B70E6EECD913C0CA = { isa = PBXGroup; children = ( + DE8DF5D263F40F65581CFDE4, + 25D76CD621FC2A211CF7BB52, + F2759373EAAC820F17409939, + 3B061AB9BFD8883A6AE8BCE5, + 24CB53290AE7A023C1BDD0DC, + 0F2505BCD0232EB95D5199F2, + E6F5CEC32EDC917B054467EF, + 619D4AFD1F66A75AE05DDAE1, + 193908A02BA553DB5B30D759, + 46C2D683A917A9D3729EEAC4, + A17913CCDA69951BC373F637, + 75EB08697D38632CCBE734D8, + 541BCBB19A86B7E793D397CC, + E2C1C995D554A3F0A363CE58, + D678882D133090214AF681BC, + 6736FDF36413E6445C526C86, + 78B148C840109794FED89FAB, + 32D9A904B4186B64A61FA8CC, + 4E5FFE3BE8774948082411F0, + B1B44E3A7614189E65CB9FBE ); name = threads; sourceTree = ""; }; + D385600698057B290BC2AEF7 = { isa = PBXGroup; children = ( + 129CDB26CC63D4BC2EB1F2CC, + 4904357A3FFA61972A9E9D6F, + DFC6364D81D9C60BD4CA9D12, + F6938A1377A2609D6AEDC120, + DC5E7FF30B01118F6DAEC38F, + 3AB1D4CECEADD4836ACEEAEE ); name = time; sourceTree = ""; }; + 0B795464B0BFEE19C4F89F0F = { isa = PBXGroup; children = ( + C5D5D2FFB030BD43160167EB, + B35200B1BC9B12580BAD4D3D, + E2DBA3307837B64AFCCD8F8D, + AF34CB5CB61484442764640E, + 08D19EE7C17DCED7E7BBEEE7, + C6861DB44A31CE7A3DEFA083, + A5D2E5A77E6A67E35440BF3B, + E570E57CC1FCEF78B54A7084, + 2C7A9B2EDC724657EBF9FA83, + C4FA33B08560AD0D000EB498, + 83056E8F17A0365667EBEA82, + AAB313919EE298E25D2EAD19, + 3A2888667372BA896AACFBDB ); name = files; sourceTree = ""; }; + 20F9DB293E2CC9F98F43758C = { isa = PBXGroup; children = ( + 9F26333042DFB93B7DFEC870, + 0473C3BCB7A43F710B8EE36C, + 14337E3F4B92468517BA24AF, + 2BB98D1E325EF7BD90C6BBB4, + 6CD1E57C60BC2917A46BF4AD, + C2ECD077AC4C784A67BC3DDE, + FF04AE9E4F2AAA29AC549461, + EBF7B2DEDAEEB28C1873F580 ); name = network; sourceTree = ""; }; + 06D5C2B5F1F4E37AF1C7A425 = { isa = PBXGroup; children = ( + 3276A099EB6880D55D2D52C0, + B89AC6F01153CC6E222EE72E, + 00376BD04FB81AF9455D45EB, + 2A4B079CDB9C40EB912B6EEB, + C510495DF7602C36F216A50C, + F40F5C63CA1098C21B96C80F, + 5283D6B68A74B09EB6D68711, + 1614411A8699B82D1F7B0346, + 051D4EAC1602802E97B24A12, + 5DBA8C92675235B098946B18, + B9F806910507E82E7BFB15E0, + 939B1B2421964EEF71768BC7, + 2CB90BE5027B202896EBCE9D, + 589A6DAE96E2A7924646873F, + 8575C117887D90BDF84397C3 ); name = streams; sourceTree = ""; }; + CBF105D9162BB597EBC1B981 = { isa = PBXGroup; children = ( + F406A0F41B2C7A512FDBC9E0, + 02DDC84BAB18E091E2CE8CB3, + F1164F66F799CEA74174328A, + EE8504403714A7CE606B5F34 ); name = logging; sourceTree = ""; }; + ABD92B739720D08778AF88F8 = { isa = PBXGroup; children = ( + 3C48242E40D358BC6FF7FE53, + A071CAC9920625A3707CF949, + CB48495010366C2E371BEFDB, + 865A30767AAA44DAE7683C8B, + EC0AF83CFFFCCDE438BCAF25 ); name = system; sourceTree = ""; }; + F6C04F077B187FD605483DEB = { isa = PBXGroup; children = ( + FB1B309BB58E2C3F8C8E78F6, + 99A9C369D8595E72707E866C, + A004A03A932CDECDED29F19C, + 1039ABBDCC86BDC9D2663017 ); name = xml; sourceTree = ""; }; + 8B95EACC67485F3C5542ED5B = { isa = PBXGroup; children = ( + F591F5E5E162D4667AC26419, + 86AE1EDF78EBEE3B5E25B419 ); name = json; sourceTree = ""; }; + 59884479C6FFC940D3992EE6 = { isa = PBXGroup; children = ( + B92070A7D5952D560DAD32C4, + 68E1CA6424A84D91BEA46175, + B6C40E843F7E8E7C4768B99E, + 001730671DD492F405B37778, + F7EAAE1A1BD13685BFF6176E, + 1772B02BAF54F29AD99DF42E ); name = zip; sourceTree = ""; }; + 248A3D6E995D23F2AFDBF78B = { isa = PBXGroup; children = ( + CE1DFE4E3908943656E180AD, + EC4F3034A642D9E037570D4F ); name = "unit_tests"; sourceTree = ""; }; + A09D1A158BCD0A396549C1F3 = { isa = PBXGroup; children = ( + 3A55FEFC24C387D3B29444D5, + 4D7F53313945ED27A7D16B80, + 3AB744A14A560E541723DC9A, + 6BAA8DF455FA84AE62E9DADC, + AF9D42A4C5359EE904DCAF8E ); name = misc; sourceTree = ""; }; + 43F993699B5DE3F1B3D3C905 = { isa = PBXGroup; children = ( + 986707BA1F2C9F7343BD152F, + 81A3ACDD205C8F9E424B51F6, + C4718AEAC94D07FEB9DA0312, + AF71B1EBA9D281491F30F42B, + F07EA5078D6BB60B698F5E12, + 68351D69C94230D1DCDB8345, + A243C85FC2C37FD73F115E67, + D253F74B7F5734984E568CA7, + D926E13AB5AD647A7A00F486, + 240BCAD873E4360E54CA2A81, + 18B0B21258B417DFDEB9D5F0, + 05EEE241CC0DF57A7BE86C29, + F100CFF192886B7699632A62, + FC7617617F95E4443AA568ED, + B743DC50150100FFA2DE76AD, + 09697D1C3F7B90DD33A8090E, + 83EB0CAD2379BD53DBEB9D0F, + AAA445B64E54BBA12D5E1358, + 6367309B2092121B86FE3AA0, + FF1F954094B14C1900C9495D, + 2358EB55148891C87833008D, + 1353717582E55D6E4D074BA5, + A1B4DCE00B10BF7C59F0E603, + 2107C02B684C7F5B75662333, + 2E1F83CE00F5855083AFA246, + 514848DA3E69A69AB0099570 ); name = native; sourceTree = ""; }; + 8BA5B0B5CBCE8D29F02D341A = { isa = PBXGroup; children = ( + ED7BB3F297250D7B43B2A536, + F824830BD560E7906A8CD82B, + 01C121A5814A16A7CB907FB9, + 101599FA5E724FC0C78144B3, + 815C2090B70E6EECD913C0CA, + D385600698057B290BC2AEF7, + 0B795464B0BFEE19C4F89F0F, + 20F9DB293E2CC9F98F43758C, + 06D5C2B5F1F4E37AF1C7A425, + CBF105D9162BB597EBC1B981, + ABD92B739720D08778AF88F8, + F6C04F077B187FD605483DEB, + 8B95EACC67485F3C5542ED5B, + 59884479C6FFC940D3992EE6, + 248A3D6E995D23F2AFDBF78B, + A09D1A158BCD0A396549C1F3, + 43F993699B5DE3F1B3D3C905, + 2B074BFC193A25602E73D0CC, + 6670AE915E331809563CA152 ); name = "juce_core"; sourceTree = ""; }; + E45B4DA7B49FC8D397F1EA56 = { isa = PBXGroup; children = ( + 5708CF7899EA21D0B72CDC2A, + C5307BECDD6325DCE92F50FC, + 5C82ACC4EE09A1DE1CCEC9A0, + 84AADFD13AF2A6F6F4681051, + E82C9EF1A74D867BBFF2090D, + 1814F5A906001DF674D1C6C1 ); name = encryption; sourceTree = ""; }; + 1EB4CE7119697D9CCE604271 = { isa = PBXGroup; children = ( + EA73C136F52502AA11DB7E15, + 1A1C8AEC3C5AB2E972B0212E, + 848D1FD80E9CA20E4977B516, + DD985A60FB76E976AF91852D ); name = hashing; sourceTree = ""; }; + E58F94F6CDB786C1ED488C9C = { isa = PBXGroup; children = ( + E45B4DA7B49FC8D397F1EA56, + 1EB4CE7119697D9CCE604271, + 2210EB5F41023B53ADD0DFBD, + 8803733D62CD6DE90727BCA0 ); name = "juce_cryptography"; sourceTree = ""; }; + 2A8293EA2395BFFCA229F799 = { isa = PBXGroup; children = ( + 7C02936574E000C436E3AD8E, + 72FED7B10FBF5AD1F504FDFF, + 5D5E0592B7C61D523CC40C50, + A485A4F0363775AE730EA0E9 ); name = values; sourceTree = ""; }; + 8E7A1020B8096653D203C38A = { isa = PBXGroup; children = ( + 98DC0221D9015F760E4613FE, + F7E829D0B21B9C1B4790A245, + 1B03B2952A4DDA6E6A1C35F9 ); name = undomanager; sourceTree = ""; }; + BD9E9E80DDC81539B00DCAB6 = { isa = PBXGroup; children = ( + 4AF755C65E352951D80FB93B, + AD3C946C260F68C4AD2B491F, + E7D09B860F4D4A13D4312C38, + 9E36C30D10A1EF9305E8D663 ); name = "app_properties"; sourceTree = ""; }; + 6A6672A570C2C2418F926C82 = { isa = PBXGroup; children = ( + 2A8293EA2395BFFCA229F799, + 8E7A1020B8096653D203C38A, + BD9E9E80DDC81539B00DCAB6, + E7E122AE104E79BB641B07B3, + 352DA3794CAAE2400AE8F2E0 ); name = "juce_data_structures"; sourceTree = ""; }; + 2287744248275B6237708450 = { isa = PBXGroup; children = ( + 139C8BAED6DCEE26652651B8, + 38CE1587800D612BA0C394A5, + DF7BB5B6B394EDEEF5F5B4B8, + FAC03FFD051FA5B34EE9BA15, + B7BE4498F5A592AAC43F0C93, + CB36CD7F57D0F4231DC98686, + 0F382FC6B16658EF02D2C4F0, + 8FF39B6B0D9DEB5BBE388A6F, + C56C7577E65C0BFA449E71FE, + 1116222363E600327FC672A0 ); name = messages; sourceTree = ""; }; + 83DEE68BC6A9B685C3E75FEA = { isa = PBXGroup; children = ( + C9DCA94BF8A4C583E5392755, + 1BF5C3F5DC2285FBEF72B697, + 4F5843D423E67797070115B3, + 9A6FD2E154DA99F96FEA1405 ); name = timers; sourceTree = ""; }; + DCBE58B4AFE058653EBBBAAE = { isa = PBXGroup; children = ( + BF92CA3FD8F9A61AE358D151, + 9C9402994B7971876006AEBB, + 1A79A64F47F7B5083EEBB328, + 7FDC4820A86DBA34E62B241E, + 5F04029BEEB2A503B29B13FB, + C6E46DBD249D9426C95E2235, + C22E03FEBEB6921978C5612A, + AACB287C990F7A7C51DE3C5B, + 90FFA0B59771716960A15448 ); name = broadcasters; sourceTree = ""; }; + 084F5B9CA3F5822A7D9156AF = { isa = PBXGroup; children = ( + 7C48EA717C5B1136A39FF4FB, + F8AC12B589FCB90E66D84729, + ACD82099C2B72FF43539FB4E, + 50672C2FACA36416A9A86310 ); name = interprocess; sourceTree = ""; }; + 334607E7051C2D75E0AC85F6 = { isa = PBXGroup; children = ( + 54569C1C994F3A0255785EAA, + D95D7B49EC6C6BDCB5A1B988, + D0F1614CC861E8E0B59B7A06, + 600102C053153EE4E1E72C85, + 32070395DAFA5355D390A120, + A5864A527A761F92C237EB7C, + 157290445D39269EA81887A3, + 236FFB34CCADD5FC95DFF04D ); name = native; sourceTree = ""; }; + DE7F542DC0967F8EDCC4DCD0 = { isa = PBXGroup; children = ( + 2287744248275B6237708450, + 83DEE68BC6A9B685C3E75FEA, + DCBE58B4AFE058653EBBBAAE, + 084F5B9CA3F5822A7D9156AF, + 334607E7051C2D75E0AC85F6, + 63092DCDC875D681A5677105, + 8D12E5100E73E3B7DAA10261 ); name = "juce_events"; sourceTree = ""; }; + C3FB0CB81D460B4263689CAF = { isa = PBXGroup; children = ( + AFAF4EF669407663DCB0F452, + 0C956209A61542371A7A5257, + CBE0B96838EE76C9CB8E1230, + 4D6F99ED00A4D8683AF313B2, + 684D88D936EDF46A76EC0538, + 920DA9E20EB14DD7D6139DD5, + 00EFEF8A403F4EC9E4D5B7D5, + F7D7A41EFE97269721C61BF4, + C71A9AF1EC7C5BE8DE2EADBB ); name = colour; sourceTree = ""; }; + F417C2CB1A694D2C1A892F63 = { isa = PBXGroup; children = ( + 6CB2CFC7615B804CE7514A24, + 925CC15E1449AED03A1CE4F8, + C061E0D3680889C69B1F0E95, + 04F31392CA58A2A434CFF7FA, + 6EE1847181635ED3C0838A4B, + 6165970F48D70C4EF06D35C4, + 620C2E1340FB7A40C1A2316B ); name = contexts; sourceTree = ""; }; + DECB572AE46DB4A77186D494 = { isa = PBXGroup; children = ( + E07C56267CBB46FC44EF2026, + A726B794D536985E1F35525F, + E3FF16862AA1B2F943DC616C, + 31A8DF142F8B653E285C7E01, + 210A4FDD4A56CF817E5E8567, + 68C633ECE610641BB1D21C95, + A60E4D1A58B70887556782F4, + 796AEF1400580E81AAF23CE7 ); name = images; sourceTree = ""; }; + F3174EF36ADC4DC23BB304F2 = { isa = PBXGroup; children = ( + 221C1BAC4138F261F97121AD, + DB876F7873F42DC685A58CA7, + FE90AF2B2BC1106C0D4056BD ); name = "image_formats"; sourceTree = ""; }; + EEE23FCA48A7F9A0152A68EE = { isa = PBXGroup; children = ( + 953ECF85818382C60F49544B, + 56B52F0F6AEDCEC78C38B5F1, + AC49F1C1B969FA4F06C77B06, + B65C16AB5714B1FBD65AD824, + E1C16C872E34BCB144B469F9, + 21B6FE5EEB3E112385D62127, + 78B2E510278C074CC7BEFD75, + 3CD57938B4C273D0AA6E6B8B, + 0FAA46FE4A661AC6F65896CE, + 8A5D40E78966BA8B0F8B542A, + 79F7CC3E9B848AAA3A5C682B, + 82395D0DB15E012EDA1AC1FE, + B79595279502C1A11A4E8C36, + E27F0860F27023BAA9798B46, + B945EB1DEE6D684E980B7428, + F08EB921DB62255A4B6DE85A ); name = geometry; sourceTree = ""; }; + 14995D34FE0826A52FA5262D = { isa = PBXGroup; children = ( + 43B98AB307841FAAB076B882, + 1F7F2864FE54D79A0C42BE93, + DB20268A566DABEAE3F2CBEE, + 93D165846B65A638F1C25C4C ); name = placement; sourceTree = ""; }; + 59C2687AA614A77DA150AFAB = { isa = PBXGroup; children = ( + BA1E340A922D0D7E543563CF, + 7B824A2F1BBE334B140BD8AF, + 3F1501FE4867042830B25DD5, + CD3216F23C7B273B010A8D12, + 14B7611971E56AC319072A5A, + 0E80EFDB550393DB1C94F291, + 50EF77E1AB95027E82157377, + 6944804CF7BBD230EDF98E3F, + 1268E54178897254E9A8B94C, + 1C666CA3AF0AB4CDCA1D983F, + 02C516CEFEE3FE48B492FDC9, + 9BB612A0BA1E2174488B5D0C ); name = fonts; sourceTree = ""; }; + 8EB51FAF42AAEC7AC357396B = { isa = PBXGroup; children = ( + D2F1CF252F7EC62B35A21CB6, + 9DE1BC5241C70AF12B327932, + C7E19F79947BEFC7DB7A9CE7, + 6B693819BC8F0548179A74AA, + 11C55B714FE5D7CAFC35A0C7 ); name = effects; sourceTree = ""; }; + 6CA37BA48005B8EF0478B69E = { isa = PBXGroup; children = ( + 70CF9F1991538524A7C4CE39, + 784287AD783AB8DDF512956F, + 44BEFED79E5FE4F558458C14, + 9BFC2FD520814B736535DB8F, + 1F36217CE7A5B1D63D41EA6C, + 045B9C5D21C5C86FED140D81, + 0B96A219A0CFF707E5A13B68, + 2AADCE9D8BADF4DAC05CCA1E, + 21FAFA7F2C5D0E8D99876EA8, + D5057D7B18ABD5E810A6F830, + 2ED5D4ABB34DAA5D6E93A171, + 5843A5060852C6ACC4770EC7 ); name = native; sourceTree = ""; }; + E9819C83D0B797FC71811B1B = { isa = PBXGroup; children = ( + C3FB0CB81D460B4263689CAF, + F417C2CB1A694D2C1A892F63, + DECB572AE46DB4A77186D494, + F3174EF36ADC4DC23BB304F2, + EEE23FCA48A7F9A0152A68EE, + 14995D34FE0826A52FA5262D, + 59C2687AA614A77DA150AFAB, + 8EB51FAF42AAEC7AC357396B, + 6CA37BA48005B8EF0478B69E, + 30AD756E053A0663BF664823, + 8DDA82E1200B61D3B6C526E8 ); name = "juce_graphics"; sourceTree = ""; }; + 2CEAE8B236FEF5E06317EF3B = { isa = PBXGroup; children = ( + 3CABAAC1C4BC0D8105183D56, + 4C150A1BF98D747EC218A602, + FDD33A6837774904810208D5, + 0BEDB3FD70AB61D3E7891D74, + 08ADF7FC9BBE70F3C8186215, + A8912DFCDA76B8897A5053CF, + D141433D3FE81F20490DE928, + 96972221C7D4CB0FCD5C3E2B, + 4E259F36C28F1ACDAB4CC73F ); name = components; sourceTree = ""; }; + CD1AFCF4DFA46BA5BACBB1CB = { isa = PBXGroup; children = ( + 9D69073057BE050870B38749, + 336D0A9B4D15CF866BCE3DFF, + 58943E79C32289AB7273F59D, + 3D2B51C71E3676F283B778EA, + 47F4C6341177140302CE802A, + 1C76BBCD73ED21571035675F, + 3804BE13635F779ACB8C5491, + B8BEDDA33D5B1613213434F4, + CF0615A1AF1A514A60322B50, + 7EF2BB6A11579386E7181553, + 7DCAE585F301C5591F96AF99, + 117B5BB797DEC16E103A08F0, + AFDCCE90EAB0DDCE50A5B89A, + 199722DD9BA0E30C0506941E, + 2FBA1138907F4DE651870008, + B20A5F49C7E6342B71770D18, + BDEBB0AC32DDA8C16FFE6011 ); name = mouse; sourceTree = ""; }; + A186EF5D092D513F30A4FE23 = { isa = PBXGroup; children = ( + 148FC834CE2CAE18477AB708, + D780ED33573AED5AD383A036, + 88EA32274CBB5C3A4ECB9ECA, + E7E1C4F416CFA44BE7DD1A74, + DD2494D5F1C081898D616AF5, + 4E3AE065222C8C87691DF2DE, + 7CBB297E627A7DC7EA12A8B6, + 77B05CF7C9BB9778EC06C396, + F1974B6EDBA502BC36671D7C, + 915ACCF56213FACAB42B427D, + 2FADEBA1901F74204DE253BC, + 1ACDDD42A7050309C8765F75, + 143BB0407046E63639E1D79D ); name = keyboard; sourceTree = ""; }; + 617C7A87C00C7357D6B4CA43 = { isa = PBXGroup; children = ( + 82E0CDC77F8802A998A475D7, + FF10E9B389909FB45E229D5B, + D503780AB98993E8F0BA1311, + 64CF8D7D0C97323C1B4F16F2, + CDCAF0EC777DA2884AEB2B59, + 79339A92305BFB7034095C67, + 4BC9122A6E6496EAF716560E, + D6C91E2BF537F75A80F5C1DB, + 8A0E175187B06CE9C368A73B, + C83992DA0BE30EA3CD06EA98, + BDBE6F06F82DF5C3BFF53B2B, + 51D4296A417B284BB2666FE8, + 9B3F6F800DC0AD8C92D70E9A, + F6FF660331F6CBF9FFC85E88, + A1DD0D7A34E118E3117ACAB4, + 227646334D4CBE863870234C, + D4E56676E2EF83404EDCBA8C, + 7723BAE1917C8A0418F2D23B, + 76439EAACE53C774CE07BD9E, + A8394930355B8BE2F67347F7, + 7FC13BEF6B2A5E5E5E92D3FC, + E530742870F07704E9616358, + 04960EE443D073F4CB7121FB, + 444CA4B9CAD1F5ED5C45448B, + 9A7E8AF6EFD287AF13B46104, + A1D3838043B605010FB84975, + AE1786BA679872921797AE25 ); name = widgets; sourceTree = ""; }; + FDA3E07A3631D25DFEA73850 = { isa = PBXGroup; children = ( + 4AE0078871D92B6085C28313, + 8A9386451AEA0640E55E8869, + 9EE339FCA2CFDAE060CB8FE6, + BDCE974230A7401C0E9D28BB, + 0CEF14D37EC664CA49A2B04D, + 14EB1DA96BC8E4901FC953F6, + 45B8EAC396722D21E6658AE8, + C717D2384896547D1CD993F6, + 63B72B34BC9AC448422EF1A0, + 96C105A8CFFC54B429A5B822, + 4977BC2F82532C86B116A07F, + CD140A1C0161176682F6CA29, + 882E28FED1A99E73B0035FC8, + E446FFE889CD490FDE3F0F2B, + 59184A106CE3FAE8BFCD82FF, + 0906A934A2797145A64FF423, + C38DFB0C94BBC1CE46A3D4E4, + 412B48D0F05D78A73064B36B, + 8E00CF4CE2305C5CE5B60E37 ); name = windows; sourceTree = ""; }; + 1183520311BFD05477F94ECA = { isa = PBXGroup; children = ( + 5644F0AFA78E8AC7501978DE, + 628869AB2D553E2A6C68C748, + 7507846FD162469386479CDB, + E654E3A3CD45A888C5F773DF, + D376B9B54EC944E766AFEC45, + F92A6000284C0FDA0A4845CA ); name = menus; sourceTree = ""; }; + 3644BF38DFC789105B7D80FB = { isa = PBXGroup; children = ( + 4924392751ACE0C9F2076599, + 490FEE91E483534632094C67, + 9EE5D1C3DFDD31D9D8237541, + C61E82D93918A611FAFD9E9F, + 98A79B670CADD4E020130BAF, + 7D50F21E9F18C152C9C662D5, + 271A1D94B96A8B7C949FD8ED, + AE3E427DBCC8D50E3F356402, + 6EE91491434D058606460AFB, + A8DB614600D348C730AC3930, + EA0D43AB5F47506D5CDA81BB, + FE283C418E7E545626881FF0, + 8427B23B886EDC0E1839D7C1, + 240889EAEAC85D85AB61011B, + 442031AD0C8A280B68CE9EF0, + 9A9B6F9A13C9F01309CE0698, + F2499004037A1C1D8FEE1FD6, + 2CD0B485ED8C5E8402671D36, + F8D0F7C0A19B4ADB58454F16, + 0BDFA0E402BA7E6B366E953C, + 4524F465153A8F6BDC236349, + 2E96852D55A9C1DEAF76FF6D, + 4437785A3DFF4AB2D6A78DB3, + 61593EB1738286004B592FD5, + 42B5C970B8DCD08A864F2208, + 5BC5622E615CA3B13C6F9046, + A4740A64F0FC3BD980BE5D9C, + 943FD0D3066412B00830FD86, + 5B8DF06BA7B7CB88C4922682, + 14DCD95D4AFE5101B036A6EC, + 125CD8A5E5B57840F5154ACD, + 189357BBA18F12A3242706A0 ); name = layout; sourceTree = ""; }; + 58CA858FC033FD1F47ADA039 = { isa = PBXGroup; children = ( + F6B1C18DDF8DFF1B3767F018, + 0CC9026D5056CA9C1FE64A64, + 6DFDC749FF36D8C27C997B3E, + 5745ECDAA4216EE2AF97E5AF, + 202591AAB1ABCFE458F33F7C, + 215EAB10AE8D19F23AD2BDBC, + 138550CC958D2F029C01B4E7, + 736E99601AB6C492D82DBF3A, + 9F5483F3EEF0A1E0C71B95A5, + CDF8F65F9079B2C14A740F0F, + 9BD2CA4A6C8DA8FF236F3AF1, + 06411E446478986E7E65FE6B, + A207C9202FF3FDE0C6B273D2, + 6D596D17B6A79C2E6C4CFBD1, + A28743047698F6C02194A218, + 3F222D26A164E7AD78A33B3D, + 263F153E8A277E02A3754BBF, + 206D399250A42034706E5434 ); name = buttons; sourceTree = ""; }; + A3BF94AE00810C812E121816 = { isa = PBXGroup; children = ( + 0019A20E8A7B6B383B6ADE26, + B40E8B05F3556B148477324B, + F2C7DE572E29A3D62EFB40F8, + 859DCE43FF52E0BF3E9E9540, + 35AF9D5F0603CF6CE2D355A1, + 8B698D4DCFED3BCB6F30D69F, + E7A4604F766ABC8BE26C94A1, + 80131CEDAA488DC654996A55, + 867C3547D1301204924989F9, + 6920079B91BB1A48F82C7B0A, + 7FF7EFDC3CF13673541E332D, + 49A941554FB8B2B20F219182, + 5E674E757BBB4EA2F62B12E9, + B54DB627A7AEB6AD820A0A90 ); name = positioning; sourceTree = ""; }; + 69E5820210E99179A52F1A77 = { isa = PBXGroup; children = ( + DEF579B1433EB8DEE7AB50F8, + E73C7E17116F6085765622E3, + AA2D4949BD61CE8B891731E4, + F5C02C740A62090A9E9BD25B, + C1FDD2DDB01AC8C4DECB2C10, + FBC98F0857AE7FCBD70C7C5C, + 003CA65912AC8048759478F9, + A132B5A63CFEF32407ACA5D7, + 05C936573E73B8AACBDF3191, + 40A83A20ED109AAAE6D63AF4, + 99557681178F79E2A803C65C, + B01CBF496E7C88105DF4B52A, + 51A0763AC785F93591517559, + BCAD13352CE76BA81629A6E7, + 16017456A45F74C692A3AE45 ); name = drawables; sourceTree = ""; }; + B2243BBE276C148522C5987E = { isa = PBXGroup; children = ( + 52508197A5E3C0040A5651CF, + 6B8E7B90EE615FA508709ADF, + E284B565DBD647DC0830D23B, + D782DA091AD3ECE158FC6A5F, + D4697A0232AECE5DAC5E332E, + 20FC504E8FB8D30E890A9837, + BD7C18F07DE633B97B4478E7, + 6D3FB966CF0EBF70802B3575, + 5382FC7D5D61AE2AD603240B, + A513D5453FF52483D13BA026, + 2DF5213993DF1380E29C848A, + B8B309972EBB7F07305ACCCA, + EDAC762083E327A80CE9D260, + F994D79D564B5F8D06E6766E ); name = properties; sourceTree = ""; }; + C2A68B1BEC638D0513BF25C1 = { isa = PBXGroup; children = ( + 9BDE235186FA9648EEECB373, + AE84254C46407F84EB70A370 ); name = lookandfeel; sourceTree = ""; }; + 00C2E5EAA46FC2E94B735C42 = { isa = PBXGroup; children = ( + DE5F3C9EF6BFFDE73AF9E7FC, + 808503667FBB423F81780796, + BE97579323E97AF084D41476, + C48DCD3879352EB40F468B0F, + C5FCECA838D4D12D03929139, + 304EEA3B0DF16CE313D8A0BA, + 07EF1095F6D45A29AF2A6B6F, + 4543EACC9AEA1894A380624F, + 0411DD6D48DBCEBAA51BEE49, + A6D36E0244150AFBF63C1162, + 9718703E5D696761B85D25B8, + F5C453F570A28FD5FA662C1E, + 9CA825B77B8DA7FD318FCF7C, + 6658BF44509F89120F6C6F8C, + E642193A9990C48CFB6479A9, + 21D1D6A04B25346CD5524B89, + 0819B9CBFBA5F410C41C978A, + 7CFA76389645D629E6C61B39, + 1F28C0018228A0F749E5658E, + 21F4416597D1AB02D38BA62E, + 6E8B46E33BF7A0DD930A5100, + C2D43E4F571D16F0E9B1E44E, + 578AA1C9D44D2E3AEA5D0278, + 050D2D209E6423528D0138F7, + A091C05141DDDF64A0735D05, + CD8F40A9EF6ECAD083543974 ); name = filebrowser; sourceTree = ""; }; + 952AFE51A503A04FFF4B0EF7 = { isa = PBXGroup; children = ( + D4F2D42C58F4D86E00E76F31, + B5C4B75E1E71D9445A1AAEE0, + D75EAC16FAECCC51E3669193, + 54747E887C1021F05F172B89, + 7E0C5AFB74461AC174941BDD, + 1B2B08359011B2BD7B07A677, + BA5C7DE347A73A87F687703C, + 9101B27E4D98157EABCE9B8B, + AEE6CA38BE01F8C61920C203 ); name = commands; sourceTree = ""; }; + 76F28FCB72DD5943D08F3342 = { isa = PBXGroup; children = ( + 5B462BC3C5F8B6D72688ABF3, + 999BC36BBD71BD4117EFDFC4, + 14F096198DE1002BF2CC56EF, + 422524EBD7DA6530970A7872 ); name = misc; sourceTree = ""; }; + DD0FDFC530E403BD51C86315 = { isa = PBXGroup; children = ( + 6A04C2E34DB0C6515FFF160B, + 2252F2B96709F3C7CE07B5E7, + D5A6D00DEFDC650AF432A698 ); name = application; sourceTree = ""; }; + 8EAF68A83656BC02B4B7C9C9 = { isa = PBXGroup; children = ( + E99F5A31373E9BDEAC40792F, + A9F6985D38A1C25F0C75215B, + B1C57BEEEFD26639F1ADFC1C, + E9B8C3CA480AE94BEA852EA9, + 2A060BB0D79BEC3CF644F553, + 4B98FC7F079F93BCC4D65C86, + DCCB75165B7C73A589498E87, + 0C747328CDADAE15E86E5E93, + 3058CCA7DE9BB9B37FE73297, + 1EC7A8EEAD8ADF43BF014C2C, + 7D264E60AC701D3736527D8C, + A37D773DEFB69C248D703F40, + 95CAB4F09E05FDBAED45812E, + 1241F3A1FCDF100CD75D5E78, + 84444B1D8FCE50BA88CDE7BF, + 0D100A1B27A72355323CB637 ); name = native; sourceTree = ""; }; + 2A27F41171A44038C2A1CB56 = { isa = PBXGroup; children = ( + 2CEAE8B236FEF5E06317EF3B, + CD1AFCF4DFA46BA5BACBB1CB, + A186EF5D092D513F30A4FE23, + 617C7A87C00C7357D6B4CA43, + FDA3E07A3631D25DFEA73850, + 1183520311BFD05477F94ECA, + 3644BF38DFC789105B7D80FB, + 58CA858FC033FD1F47ADA039, + A3BF94AE00810C812E121816, + 69E5820210E99179A52F1A77, + B2243BBE276C148522C5987E, + C2A68B1BEC638D0513BF25C1, + 00C2E5EAA46FC2E94B735C42, + 952AFE51A503A04FFF4B0EF7, + 76F28FCB72DD5943D08F3342, + DD0FDFC530E403BD51C86315, + 8EAF68A83656BC02B4B7C9C9, + E4E74B2BC3F3CB5A4F4DC55E, + 2B8548461E318DCB3354DB43 ); name = "juce_gui_basics"; sourceTree = ""; }; + 9DEFBE65118D0527555955A2 = { isa = PBXGroup; children = ( + BC17B02633EF1E31024051C2, + 430239E0574C157689D83206, + AD0AB6FA2DE544D6C77E69AC, + CC3F5263B16932FF4E74B9D8, + 318F4AB64A5D4068CC1C4F29, + 09349C0C8300CA414AAE93A0, + 6F8A53EDF09094C83DE4D111 ); name = "code_editor"; sourceTree = ""; }; + 1D09D8A2B803860D8927C366 = { isa = PBXGroup; children = ( + 3419904525A3F1FF0CC50687, + BA95268EEE80F9509EC1F76F ); name = documents; sourceTree = ""; }; + A1B124604F7F471E01D8AA6E = { isa = PBXGroup; children = ( + A1C82396A9A0F9A296AA7E6B, + 99DD90B64BC5CC5FF68FA0C5, + 86DADC3D8463C21DF2751EA6 ); name = embedding; sourceTree = ""; }; + DD35BF639F13CB10E9ACF910 = { isa = PBXGroup; children = ( + 26C4A38525D6A327C0102D18, + BE90AA37929461DF6F6A9E13 ); name = lookandfeel; sourceTree = ""; }; + F50C1ADB9086D61160516CB7 = { isa = PBXGroup; children = ( + 53DB14312FF9B861739F6747, + 51D0841BECA0E4405EDEC794, + 5CB6ACA0F14EDE47A4F7BCC2, + 1B9552C3FEAFF2071C860987, + B6D03F8491E288FD4BC31445, + AD44FFB01387088222D0E98F, + 971FD8FEAE9A521A6983B8C9, + 25E306BB0D875CB0934C405C, + 322A68B4BBEE9CC039B9E024, + 6B8796ED91A82AB5A8EB922F, + DE40B42B57F29C650CB7F2AD, + 56E8C48ADDEBD48A49C885CB, + CA62F9F7C5F0D77D8E33D91F, + F9D77BAA08889D69E0C43F25, + E54D0994D31E20A0A05EBA2B, + 63B74F9D9F43393F6427501C ); name = misc; sourceTree = ""; }; + 4C0BD8F18173E3D675D03872 = { isa = PBXGroup; children = ( + 53704A9E32438DCEFF6A155B, + 58858190E0EE0AA6955EA236, + 2E540A9137E245EFADCFABB3, + D9342535EA61901A1AD816C6, + D800DE818BEDBF4579D15B1D, + 441A0EA83E44264CB977F21B, + A3DB226F40C387078864E68A, + ED94D4B502DF310763C6CE23, + 81B74E2B42184AD339E89F0B, + 7435199CD81F307322FE1065, + E7B6A0CBA0D27A095E83F5B7 ); name = native; sourceTree = ""; }; + DFC8A876133A671741A5FCA2 = { isa = PBXGroup; children = ( + 9DEFBE65118D0527555955A2, + 1D09D8A2B803860D8927C366, + A1B124604F7F471E01D8AA6E, + DD35BF639F13CB10E9ACF910, + F50C1ADB9086D61160516CB7, + 4C0BD8F18173E3D675D03872, + 57FD2D74F5DCFF42099CA738, + 17C645785FB20AA2E91ED84B ); name = "juce_gui_extra"; sourceTree = ""; }; + 8A24D1B6925535A868974986 = { isa = PBXGroup; children = ( + 8BA5B0B5CBCE8D29F02D341A, + E58F94F6CDB786C1ED488C9C, + 6A6672A570C2C2418F926C82, + DE7F542DC0967F8EDCC4DCD0, + E9819C83D0B797FC71811B1B, + 2A27F41171A44038C2A1CB56, + DFC8A876133A671741A5FCA2 ); name = "Juce Modules"; sourceTree = ""; }; + 2C6746F66EF4444F53B3221F = { isa = PBXGroup; children = ( + 8702F43110E4CCA5E5F827F5, + 472F9A90F685220D730EBF6C, + 4F687965FBE86EAFDB3ACFEC, + 38F29C2049566C47993A6D92, + D53B54D1786A1FFC024BF064, + D9E59DE07A815AB303A297D9, + 56E24241C02F953589493551, + A2A081D9DA35B3D1F183C3FE, + 70DC1D288DC6503E628A5A03, + 9539EC08D70D4719A89A4A30, + 364D1A9B113320407A7E57B9 ); name = "Juce Library Code"; sourceTree = ""; }; + 8180B5894A78501084B8F133 = { isa = PBXGroup; children = ( + 4CA1C3E6585D7694AA9C309F, + 951128CA33CCDEF570436B1C ); name = Resources; sourceTree = ""; }; + 0FFEF043CA89142B18C79ABE = { isa = PBXGroup; children = ( + D00F311BFC3C2625C457CB9B, + D1F9B0E9F5D54FE48BEB46EA, + E96597BBC6A98255B51B94DC, + E5D6C36496F5BC84D7213BE8, + CF6C8BD0DA3D8CD4E99EBADA ); name = Frameworks; sourceTree = ""; }; + 92ABB8016546F41128399E9D = { isa = PBXGroup; children = ( + 25F52316D256B4534BED16D1 ); name = Products; sourceTree = ""; }; + 3CC531922CC2D398E283A845 = { isa = PBXGroup; children = ( + D3109994DA6AD871BE85C4E2, + 8A24D1B6925535A868974986, + 2C6746F66EF4444F53B3221F, + 8180B5894A78501084B8F133, + 0FFEF043CA89142B18C79ABE, + 92ABB8016546F41128399E9D ); name = Source; sourceTree = ""; }; + EA0BCC969703B2D179089E55 = { isa = XCBuildConfiguration; buildSettings = { + HEADER_SEARCH_PATHS = "../../JuceLibraryCode $(inherited)"; GCC_OPTIMIZATION_LEVEL = 0; INFOPLIST_FILE = Info.plist; INSTALL_PATH = "$(HOME)/Applications"; MACOSX_DEPLOYMENT_TARGET_ppc = 10.4; + GCC_VERSION = com.apple.compilers.llvm.clang.1_0; + CLANG_CXX_LANGUAGE_STANDARD = "c++0x"; ONLY_ACTIVE_ARCH = YES; COPY_PHASE_STRIP = NO; GCC_DYNAMIC_NO_PIC = NO; - GCC_ENABLE_FIX_AND_CONTINUE = NO; GCC_PREPROCESSOR_DEFINITIONS = ( "_DEBUG=1", "DEBUG=1", "JUCE_ObjCExtraSuffix=zNNCr", "JUCER_XCODE_MAC_F6D2F4CF=1"); }; name = Debug; }; - 673FACB8969ADED17ACEFF7C = { isa = XCBuildConfiguration; buildSettings = { + B159CF4275B8A90122629FF4 = { isa = XCBuildConfiguration; buildSettings = { ARCHS = "$(ARCHS_STANDARD_32_BIT)"; - PREBINDING = NO; - HEADER_SEARCH_PATHS = " $(inherited)"; + HEADER_SEARCH_PATHS = "../../JuceLibraryCode $(inherited)"; GCC_OPTIMIZATION_LEVEL = 3; INFOPLIST_FILE = Info.plist; INSTALL_PATH = "$(HOME)/Applications"; MACOSX_DEPLOYMENT_TARGET = 10.5; MACOSX_DEPLOYMENT_TARGET_ppc = 10.4; + GCC_VERSION = com.apple.compilers.llvm.clang.1_0; + CLANG_CXX_LANGUAGE_STANDARD = "c++0x"; GCC_GENERATE_DEBUGGING_SYMBOLS = NO; GCC_SYMBOLS_PRIVATE_EXTERN = YES; GCC_PREPROCESSOR_DEFINITIONS = ( @@ -288,7 +1637,7 @@ "NDEBUG=1", "JUCE_ObjCExtraSuffix=zNNCr", "JUCER_XCODE_MAC_F6D2F4CF=1"); }; name = Release; }; - 69D26A715A354ED1735D8438 = { isa = XCBuildConfiguration; buildSettings = { + C42924A24AB55E6A940423EA = { isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; GCC_C_LANGUAGE_STANDARD = c99; GCC_WARN_ABOUT_RETURN_TYPE = YES; @@ -303,7 +1652,7 @@ ZERO_LINK = NO; DEBUG_INFORMATION_FORMAT = "dwarf"; PRODUCT_NAME = "Introjucer"; }; name = Debug; }; - 4C681DED23FC5056A83C964C = { isa = XCBuildConfiguration; buildSettings = { + 70135D15D7E0D8410C42BBA3 = { isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; GCC_C_LANGUAGE_STANDARD = c99; GCC_WARN_ABOUT_RETURN_TYPE = YES; @@ -318,61 +1667,59 @@ ZERO_LINK = NO; DEBUG_INFORMATION_FORMAT = "dwarf"; PRODUCT_NAME = "Introjucer"; }; name = Release; }; - 045AC698C60073CCF5CC6116 = { isa = XCConfigurationList; buildConfigurations = ( - 69D26A715A354ED1735D8438, - 4C681DED23FC5056A83C964C ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Debug; }; - AC9DE3D3A6632D0494CC8609 = { isa = XCConfigurationList; buildConfigurations = ( - DD9313457B3248E7646270A4, - 673FACB8969ADED17ACEFF7C ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Debug; }; - 87CCE4CB1FAB40B6F21DEACE = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( - AADBA9EB828F8C6A5E38593B ); runOnlyForDeploymentPostprocessing = 0; }; - 5362E03ADF975A126C1F2F7B = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - D6D0659F3F3504012246F13D, - 8BAE4D8EA7F247DA0A4D3A5C, - 280FE650B3F02AD9E821EA37, - 9950893AA82F86F1EEE55BED, - C2F198C7058FC1A88A600645, - A7C05B907BBCB4288FBC6428, - 6B48E4B12BB56C2254F293DF, - 7A7859C8F2DFDC8D80FE0F0E, - 5BD727176204D71F2E0F42CC, - DA3D1949878344EAE971E9CF, - 086FC650CA4A39161F5DC34A, - 7192D99BD62492851CC34B39, - 379C4FA4F9F4F856A245D8F1, - A70571C45ECEB18061181367, - 7B65A9D3D6D5798649D90FA0, - 257C8841AC7634499B0B3D0A, - 85572197E35546BB69861758, - 0E22757B983B4F600F1B7916, - 1501CEE9D0FD3C1185F6413B, - FF1962A57973208A90330B3C, - E2DFFAAE26E2D87AE3CE3136, - 0F780301B225C3022C346CD4, - 59B173809CEC75EC0C74D1CF, - 69CA42E334E4BA09E4FE8B65, - 0C3A85F58C34FA91D16664EB, - 08C0959668FFC1A90B4BA8E6, - 1457A52734BA97A13610ECF1, - 20EDB5C810855EB960F520FC ); runOnlyForDeploymentPostprocessing = 0; }; - 08881173C882953BE5F11D6C = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 1FD6A59398E3618F79475867, - B703C44375C75E5AB099E74A, - 7BDFF9F0E16DF33A980F46DC, - 52A4EFC1F732A9D5BBB61AF5, - C65112B26E0BB0BB8DBD3F3C, - 2C3270317859BA6DF8EC1458, - 022036CBB0FBE47C417A6222, - AA7B50F22523465B07D4A25B, - 93C9F3F27602A33DDC9C2250, - DBE3CE9482B19CF1AE700805, - 2E6836738CE7EB452FDC7E9A, - E63745F5956C698352A2ACA0 ); runOnlyForDeploymentPostprocessing = 0; }; - EB946A866C16B958168C9A39 = { isa = PBXNativeTarget; buildConfigurationList = AC9DE3D3A6632D0494CC8609; buildPhases = ( - 87CCE4CB1FAB40B6F21DEACE, - 5362E03ADF975A126C1F2F7B, - 08881173C882953BE5F11D6C ); buildRules = ( ); dependencies = ( ); name = "The Introjucer"; productName = "The Introjucer"; productReference = 12E1601866B3489844AFD645; productInstallPath = "$(HOME)/Applications"; productType = "com.apple.product-type.application"; }; - D64DFDDF5D2CD74A8171CF81 = { isa = PBXProject; buildConfigurationList = 045AC698C60073CCF5CC6116; compatibilityVersion = "Xcode 3.1"; hasScannedForEncodings = 0; mainGroup = F03291953F0A7EA46599E27B; projectDirPath = ""; projectRoot = ""; targets = ( EB946A866C16B958168C9A39 ); }; + F90407F24422C589DA251604 = { isa = XCConfigurationList; buildConfigurations = ( + C42924A24AB55E6A940423EA, + 70135D15D7E0D8410C42BBA3 ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Debug; }; + 9D7584E9B3803102EC798231 = { isa = XCConfigurationList; buildConfigurations = ( + EA0BCC969703B2D179089E55, + B159CF4275B8A90122629FF4 ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Debug; }; + C009859650B4628FDD068941 = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( + 1321E6C1C6170B6C898AD09D ); runOnlyForDeploymentPostprocessing = 0; }; + 84449D044096A03F2582904B = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( + 954A036F5DDB375DB23FFB3E, + 3EB3D569250C4BA4CA9AF578, + 9A4D477F1924C31A52AF5C79, + B1A786B525176BEE309998EA, + 95B44E6C74B1DED31DBE37EB, + AA9D0B8E23F3D87A23DE9F8A, + 244BA1BDA5FAA465EA3F9C6D, + 349B4C837D996E71E08657A5, + 3FCA61C401007B243E2E9035, + 5BC89E7905397ABECD25ACCD, + FBE57B26FE59319AA2E8B59D, + 30B921C38DCEE787B294B746, + 676D2E1E750E61AA2FAA335E, + BB1D52AE45F40BEDCEBC993F, + 9CBD0A9A700D28081C8182C5, + 8012E6487639A7368E4C4470, + B18DEBB2CBB335AFAE249E8E, + 1F37544891EC8DBB5E500C1C, + 110221CD5578153B528AD2BE, + CD4F7B119CE718BCE78D61F4, + 78CB463DD98A55313A543859, + 123810DAF8AF758928916ECE, + C9F11BA62D6D092A300363F7, + F6635694A01FFBF5EF0968DB, + FCE6F604C00039A32649CB69, + 3C5267E06A897B0DC0F7EA50, + 7E72CB84146E1B4B168356CA, + 24AE6B973834AF7E0DE1F228, + AF55472121E1C56E5EB9CB4B, + 284EBBCCB7C9FCB23BE43971, + EF27EC7543BED0B8DD66A098, + 756B48DA5FA991E74035E812, + 81E6980930B09FF108123186 ); runOnlyForDeploymentPostprocessing = 0; }; + B8D802107FEE6AD60F5309A3 = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + 1E76E36772355E2A43CF4961, + 241F29FCBB7A17BB44A0B10C, + 49C22786B54C5DC94E4654B8, + 11D42F7EC6E6539D79A7F4B1, + B980464FA2761CCD64B1FAD6 ); runOnlyForDeploymentPostprocessing = 0; }; + FE688C03195D5E72123A75BF = { isa = PBXNativeTarget; buildConfigurationList = 9D7584E9B3803102EC798231; buildPhases = ( + C009859650B4628FDD068941, + 84449D044096A03F2582904B, + B8D802107FEE6AD60F5309A3 ); buildRules = ( ); dependencies = ( ); name = "The Introjucer"; productName = "The Introjucer"; productReference = 25F52316D256B4534BED16D1; productInstallPath = "$(HOME)/Applications"; productType = "com.apple.product-type.application"; }; + 74EA481348A24104E6ACE009 = { isa = PBXProject; buildConfigurationList = F90407F24422C589DA251604; compatibilityVersion = "Xcode 3.2"; hasScannedForEncodings = 0; mainGroup = 3CC531922CC2D398E283A845; projectDirPath = ""; projectRoot = ""; targets = ( FE688C03195D5E72123A75BF ); }; }; - rootObject = D64DFDDF5D2CD74A8171CF81; + rootObject = 74EA481348A24104E6ACE009; } diff --git a/extras/Introjucer/Builds/VisualStudio2005/The Introjucer.sln b/extras/Introjucer/Builds/VisualStudio2005/The Introjucer.sln index 7bf226f0a1..cd5c853b9e 100644 --- a/extras/Introjucer/Builds/VisualStudio2005/The Introjucer.sln +++ b/extras/Introjucer/Builds/VisualStudio2005/The Introjucer.sln @@ -1,6 +1,6 @@ -Microsoft Visual Studio Solution File, Format Version 8.00 +Microsoft Visual Studio Solution File, Format Version 9.00 # Visual C++ Express 2005 -Project("{4C35D249-2981-3D26-0C2E-BDE1841F8430}") = "The Introjucer", "The Introjucer.vcproj", "{C9C4A72E-8CC9-D57E-C0D0-2E6109E48884}" +Project("{62DDBD62-D03F-FBCA-D85C-731B2D53653D}") = "The Introjucer", "The Introjucer.vcproj", "{26ABE2A4-1F2F-8375-088D-D692A4408B5A}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution @@ -8,10 +8,10 @@ Global Release|Win32 = Release|Win32 EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution - {C9C4A72E-8CC9-D57E-C0D0-2E6109E48884}.Debug|Win32.ActiveCfg = Debug|Win32 - {C9C4A72E-8CC9-D57E-C0D0-2E6109E48884}.Debug|Win32.Build.0 = Debug|Win32 - {C9C4A72E-8CC9-D57E-C0D0-2E6109E48884}.Release|Win32.ActiveCfg = Release|Win32 - {C9C4A72E-8CC9-D57E-C0D0-2E6109E48884}.Release|Win32.Build.0 = Release|Win32 + {26ABE2A4-1F2F-8375-088D-D692A4408B5A}.Debug|Win32.ActiveCfg = Debug|Win32 + {26ABE2A4-1F2F-8375-088D-D692A4408B5A}.Debug|Win32.Build.0 = Debug|Win32 + {26ABE2A4-1F2F-8375-088D-D692A4408B5A}.Release|Win32.ActiveCfg = Release|Win32 + {26ABE2A4-1F2F-8375-088D-D692A4408B5A}.Release|Win32.Build.0 = Release|Win32 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/extras/Introjucer/Builds/VisualStudio2005/The Introjucer.vcproj b/extras/Introjucer/Builds/VisualStudio2005/The Introjucer.vcproj index afeac2d2dd..957c1e0b5f 100644 --- a/extras/Introjucer/Builds/VisualStudio2005/The Introjucer.vcproj +++ b/extras/Introjucer/Builds/VisualStudio2005/The Introjucer.vcproj @@ -3,7 +3,7 @@ @@ -32,7 +32,7 @@ Optimization="0" BufferSecurityCheck="" DebugInformationFormat="4" - AdditionalIncludeDirectories="" + AdditionalIncludeDirectories="..\..\JuceLibraryCode" PreprocessorDefinitions="WIN32;_WINDOWS;DEBUG;_DEBUG;JUCER_VS2005_78A5003=1" RuntimeLibrary="1" RuntimeTypeInfo="true" @@ -54,6 +54,7 @@ GenerateDebugInformation="true" ProgramDatabaseFile=".\Debug\Introjucer.pdb" SubSystem="2" + GenerateManifest="true" TargetMachine="1"/> @@ -85,10 +86,10 @@ TypeLibraryName=".\Release\Introjucer.tlb" HeaderFileName=""/> @@ -131,6 +132,8 @@ + + @@ -145,13 +148,12 @@ - - - - + + + @@ -160,24 +162,26 @@ - - - - - - - - - + + + + + + + + + + + @@ -194,6 +198,10 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - diff --git a/extras/Introjucer/Builds/VisualStudio2005/icon.ico b/extras/Introjucer/Builds/VisualStudio2005/icon.ico index b5dbab53ed..8a216cd7f4 100644 Binary files a/extras/Introjucer/Builds/VisualStudio2005/icon.ico and b/extras/Introjucer/Builds/VisualStudio2005/icon.ico differ diff --git a/extras/Introjucer/Builds/VisualStudio2008/The Introjucer.sln b/extras/Introjucer/Builds/VisualStudio2008/The Introjucer.sln index f1c0a65930..0ab6613061 100644 --- a/extras/Introjucer/Builds/VisualStudio2008/The Introjucer.sln +++ b/extras/Introjucer/Builds/VisualStudio2008/The Introjucer.sln @@ -1,6 +1,6 @@ Microsoft Visual Studio Solution File, Format Version 10.00 # Visual C++ Express 2008 -Project("{4C35D249-2981-3D26-0C2E-BDE1841F8430}") = "The Introjucer", "The Introjucer.vcproj", "{C9C4A72E-8CC9-D57E-C0D0-2E6109E48884}" +Project("{62DDBD62-D03F-FBCA-D85C-731B2D53653D}") = "The Introjucer", "The Introjucer.vcproj", "{26ABE2A4-1F2F-8375-088D-D692A4408B5A}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution @@ -8,10 +8,10 @@ Global Release|Win32 = Release|Win32 EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution - {C9C4A72E-8CC9-D57E-C0D0-2E6109E48884}.Debug|Win32.ActiveCfg = Debug|Win32 - {C9C4A72E-8CC9-D57E-C0D0-2E6109E48884}.Debug|Win32.Build.0 = Debug|Win32 - {C9C4A72E-8CC9-D57E-C0D0-2E6109E48884}.Release|Win32.ActiveCfg = Release|Win32 - {C9C4A72E-8CC9-D57E-C0D0-2E6109E48884}.Release|Win32.Build.0 = Release|Win32 + {26ABE2A4-1F2F-8375-088D-D692A4408B5A}.Debug|Win32.ActiveCfg = Debug|Win32 + {26ABE2A4-1F2F-8375-088D-D692A4408B5A}.Debug|Win32.Build.0 = Debug|Win32 + {26ABE2A4-1F2F-8375-088D-D692A4408B5A}.Release|Win32.ActiveCfg = Release|Win32 + {26ABE2A4-1F2F-8375-088D-D692A4408B5A}.Release|Win32.Build.0 = Release|Win32 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/extras/Introjucer/Builds/VisualStudio2008/The Introjucer.vcproj b/extras/Introjucer/Builds/VisualStudio2008/The Introjucer.vcproj index b77ad5f9f6..1e04196276 100644 --- a/extras/Introjucer/Builds/VisualStudio2008/The Introjucer.vcproj +++ b/extras/Introjucer/Builds/VisualStudio2008/The Introjucer.vcproj @@ -3,7 +3,7 @@ @@ -32,7 +32,7 @@ Optimization="0" BufferSecurityCheck="" DebugInformationFormat="4" - AdditionalIncludeDirectories="" + AdditionalIncludeDirectories="..\..\JuceLibraryCode" PreprocessorDefinitions="WIN32;_WINDOWS;DEBUG;_DEBUG;JUCER_VS2008_78A5006=1" RuntimeLibrary="1" RuntimeTypeInfo="true" @@ -54,6 +54,7 @@ GenerateDebugInformation="true" ProgramDatabaseFile=".\Debug\Introjucer.pdb" SubSystem="2" + GenerateManifest="true" TargetMachine="1"/> @@ -85,10 +86,10 @@ TypeLibraryName=".\Release\Introjucer.tlb" HeaderFileName=""/> @@ -131,6 +132,8 @@ + + @@ -145,13 +148,12 @@ - - - - + + + @@ -160,24 +162,26 @@ - - - - - - - - - + + + + + + + + + + + @@ -194,6 +198,10 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - diff --git a/extras/Introjucer/Builds/VisualStudio2008/icon.ico b/extras/Introjucer/Builds/VisualStudio2008/icon.ico index b5dbab53ed..8a216cd7f4 100644 Binary files a/extras/Introjucer/Builds/VisualStudio2008/icon.ico and b/extras/Introjucer/Builds/VisualStudio2008/icon.ico differ diff --git a/extras/Introjucer/Builds/VisualStudio2010/The Introjucer.sln b/extras/Introjucer/Builds/VisualStudio2010/The Introjucer.sln index 2de9a54e10..9f25febcdc 100644 --- a/extras/Introjucer/Builds/VisualStudio2010/The Introjucer.sln +++ b/extras/Introjucer/Builds/VisualStudio2010/The Introjucer.sln @@ -1,5 +1,6 @@ Microsoft Visual Studio Solution File, Format Version 11.00 -Project("{4C35D249-2981-3D26-0C2E-BDE1841F8430}") = "The Introjucer", "The Introjucer.vcxproj", "{C9C4A72E-8CC9-D57E-C0D0-2E6109E48884}" +# Visual Studio 2010 +Project("{62DDBD62-D03F-FBCA-D85C-731B2D53653D}") = "The Introjucer", "The Introjucer.vcxproj", "{26ABE2A4-1F2F-8375-088D-D692A4408B5A}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution @@ -7,10 +8,10 @@ Global Release|Win32 = Release|Win32 EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution - {C9C4A72E-8CC9-D57E-C0D0-2E6109E48884}.Debug|Win32.ActiveCfg = Debug|Win32 - {C9C4A72E-8CC9-D57E-C0D0-2E6109E48884}.Debug|Win32.Build.0 = Debug|Win32 - {C9C4A72E-8CC9-D57E-C0D0-2E6109E48884}.Release|Win32.ActiveCfg = Release|Win32 - {C9C4A72E-8CC9-D57E-C0D0-2E6109E48884}.Release|Win32.Build.0 = Release|Win32 + {26ABE2A4-1F2F-8375-088D-D692A4408B5A}.Debug|Win32.ActiveCfg = Debug|Win32 + {26ABE2A4-1F2F-8375-088D-D692A4408B5A}.Debug|Win32.Build.0 = Debug|Win32 + {26ABE2A4-1F2F-8375-088D-D692A4408B5A}.Release|Win32.ActiveCfg = Release|Win32 + {26ABE2A4-1F2F-8375-088D-D692A4408B5A}.Release|Win32.Build.0 = Release|Win32 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/extras/Introjucer/Builds/VisualStudio2010/The Introjucer.vcxproj b/extras/Introjucer/Builds/VisualStudio2010/The Introjucer.vcxproj index fb75b53591..b931013b0d 100644 --- a/extras/Introjucer/Builds/VisualStudio2010/The Introjucer.vcxproj +++ b/extras/Introjucer/Builds/VisualStudio2010/The Introjucer.vcxproj @@ -12,7 +12,7 @@ - {C9C4A72E-8CC9-D57E-C0D0-2E6109E48884} + {26ABE2A4-1F2F-8375-088D-D692A4408B5A} @@ -38,9 +38,11 @@ .\Debug\ .\Debug\ Introjucer + true .\Release\ .\Release\ Introjucer + true @@ -53,7 +55,7 @@ Disabled EditAndContinue - %(AdditionalIncludeDirectories) + ..\..\JuceLibraryCode;%(AdditionalIncludeDirectories) WIN32;_WINDOWS;DEBUG;_DEBUG;JUCER_VS2010_78A501D=1;%(PreprocessorDefinitions) MultiThreadedDebug true @@ -63,6 +65,7 @@ .\Debug\ Level4 true + true _DEBUG;%(PreprocessorDefinitions) @@ -91,7 +94,7 @@ MaxSpeed - %(AdditionalIncludeDirectories) + ..\..\JuceLibraryCode;%(AdditionalIncludeDirectories) WIN32;_WINDOWS;NDEBUG;JUCER_VS2010_78A501D=1;%(PreprocessorDefinitions) MultiThreaded true @@ -101,6 +104,7 @@ .\Release\ Level4 true + true NDEBUG;%(PreprocessorDefinitions) @@ -122,38 +126,848 @@ + - + - - + + + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + - - - - + + + + + + + + @@ -161,23 +975,24 @@ - + + - - - - - - - + + + + + + + @@ -187,10 +1002,328 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/extras/Introjucer/Builds/VisualStudio2010/The Introjucer.vcxproj.filters b/extras/Introjucer/Builds/VisualStudio2010/The Introjucer.vcxproj.filters index 9e619dc50f..385d8d2b0d 100644 --- a/extras/Introjucer/Builds/VisualStudio2010/The Introjucer.vcxproj.filters +++ b/extras/Introjucer/Builds/VisualStudio2010/The Introjucer.vcxproj.filters @@ -3,28 +3,235 @@ - {ED748238-26CC-87E9-E280-F46B6D62B64F} + {08497553-90EF-7F50-1FCE-C399F0F4F301} - {5AFE9176-C481-3BD6-B1A2-E344873B906D} - - - {7D1B95A0-4E50-DD4E-402D-840BD601DCF8} + {BCABA310-8FA8-9483-44C8-901CB254B038} - {B5B5C922-2604-DF83-A0B9-259C3DBA1AF6} + {9CFC1C13-C955-D9BB-A0F7-363446AC2CBB} + + + {330A7495-9D53-820D-AD63-2DC83D2ED767} - {647FC3C6-4A06-A9FA-2C82-8F8744A223EE} + {BF742880-2B1E-3276-CFB8-089DC7DD5EE5} + + + {D05B051C-4835-D6A6-3AF4-B61963EFC368} - {8CE77BC0-4FCD-C9EA-C5D2-4E2ED36FDAAD} + {768EDA37-3A9B-E5C5-8D35-27FEF74CCBA0} + + + {422C46B7-0467-2DB0-BF3C-16DFCAFD69AC} + + + {95CA1506-2B94-0DEE-0C8D-85EDEBBC4E88} + + + {244D11B0-2D68-3C08-A0B7-0D12469BC3AA} + + + {476C69CE-0B67-6B85-E888-45D91E37A29E} + + + {7C5AD030-F8CC-6E85-0AF6-196B3ED40AC6} + + + {0608ADE9-66EF-1A19-6D57-12D07F76EB53} + + + {05F3DB8A-499C-6ACA-282F-5BF8455A0DE1} + + + {C9F6D785-BF78-5AA1-B479-111C65397864} + + + {C8F726FC-26BF-2E6B-4ED5-55A7FE316D7D} + + + {DA0DC4AC-B511-A2D4-199A-C93454D6F114} + + + {91929C6F-7902-B87D-5260-2F6CBF8ACD93} + + + {C294408A-2005-2E9E-7AC0-8D3ABE8AC175} + + + {4634FFAE-9586-A970-364C-4FDDA635F99F} + + + {F2B2F310-F30F-7166-42A9-9BF9C230DA78} + + + {5B662103-FB59-7229-1076-6A6665724ED0} + + + {F03654BC-34D8-F975-BEA3-750CC2783D23} + + + {4927C7A1-9235-4AA1-93CD-B4E67E6F1E5F} + + + {FA891A58-9FDA-9651-43C4-714A19B5D08D} + + + {C79A4D23-7866-8F3E-AC39-BD68C52A9259} + + + {3C7C8F35-6C08-9866-6663-6FEFE2EFC9FC} + + + {7703D2CE-C32A-936A-0EEF-949FE6E52EB5} + + + {8D283B6C-13BA-9EF6-1B18-B1C393786943} + + + {928D8FCC-5E00-174B-6538-93E8D75AB396} + + + {1988E68A-A964-64CA-0E0C-26FF9BC5176C} + + + {3DF036EA-3B80-553B-2494-3AAC835CAE75} + + + {358AEA11-3F96-36AE-7B32-71373B5C5396} + + + {F2A38F45-6E55-E147-2E52-64A89FDD9D59} + + + {6172822C-01A5-E824-12DA-FA43FA934D35} + + + {41DC3BE3-D629-8A17-C32B-F5B4008B5FAD} + + + {B098BC87-3298-7E6B-12DC-D26C09CDCAED} + + + {6322B88F-984A-C3CD-6263-38D7AA49B6EC} + + + {73C1E759-AD90-59A3-942E-2D10FAA29107} + + + {EE1AE8C3-0908-8F53-A4E5-D930C7C97C26} + + + {4926B3FF-E797-F586-857A-69D9703FA2D1} + + + {EBC65085-3AD5-280C-1A29-2B1683643AA1} + + + {413F481F-075C-2958-115C-D8268682FCB7} + + + {69E1179D-76EC-26DC-C3E6-6602ED26D783} + + + {C1A1A236-AB01-173E-96C3-0706BFF93B1E} + + + {1182303F-ECA3-166D-AC0C-92C5E762CB93} + + + {26ECA2AF-7368-C6CC-58EF-017ECD1862D0} + + + {E37D25CD-4350-4614-055B-7ABC55E67895} + + + {FFC6E1CC-C772-75E6-5087-FB5D4E016799} + + + {8E43579F-C185-266D-DD67-F8B95BD80F2F} + + + {2CB59E7C-D0E4-7D27-2ACF-C7ABADEE936D} + + + {796B7886-44A7-34CC-9B95-BF4FB2C7B6F4} + + + {A92719C7-70BE-57C4-CE9E-A9BC9DFEB757} + + + {75F1F352-251A-75E0-D941-8431588F5C1E} + + + {DB6E3D09-66DA-12DA-BAE8-A5BFFA7A14AC} + + + {7BCEAB87-62FD-0327-EB5D-679E54EDB9B1} + + + {E980FADB-6E3F-B93C-DE02-CE4271C9BA93} + + + {C3B2EB8A-1A2F-306F-AA78-3E9D1593788B} + + + {7A53E6F1-1343-33B8-4CA8-1D7B714A0E76} + + + {5A0AA36E-3957-E413-14C6-31CBE15271DF} + + + {D7E3D10F-3ED8-DFC5-6DB3-E4ACBF8678FB} + + + {F408DCA2-D5E2-0A3A-A064-A1D045889BC1} + + + {5FDBD6B1-9BBD-392F-4DA5-FEA40A9370C4} + + + {46535B56-3737-2BE8-E3A0-571BCBEB2DA4} + + + {C2B9505B-27B4-F650-12BD-F477D4BBCBAA} + + + {61712B09-5783-ADFA-2001-5A0C3D7764EB} + + + {8A80BA78-D3A8-C0F8-7FFD-61AA028CE852} + + + {8EC9572F-3CCA-E930-74B6-CB6139DE0E17} + + + {C60A6FCA-9462-922E-AD8D-69F10C9049AF} + + + {D56498EE-E354-1F00-5EEE-8CF7944BEAFB} + + + {61B2920C-494D-D8CB-C0C7-5DBF3D76D164} + + + {4980B18D-FEDE-B773-F254-E3B5207D81F0} + + + {66C9B809-8739-A217-C78D-A15D6089B8E3} + + + {C413328B-5D81-89EE-F4F3-75752E700DE4} - {F7048EA6-F4B2-F31B-E402-E05D678A1111} + {8B4D1BAA-6DB4-CAEC-A0FA-271F354D5C61} + + The Introjucer\Application + The Introjucer\Application @@ -43,12 +250,12 @@ The Introjucer\Application - - The Introjucer\Code Editor - The Introjucer\Project + + The Introjucer\Project + The Introjucer\Project @@ -61,9 +268,6 @@ The Introjucer\Project - - The Introjucer\Project - The Introjucer\Project @@ -73,12 +277,15 @@ The Introjucer\Project - - The Introjucer\Project - The Introjucer\Project + + The Introjucer\Project Saving + + + The Introjucer\Project Saving + The Introjucer\Utility @@ -94,6 +301,9 @@ The Introjucer\Utility + + The Introjucer\Code Editor + The Introjucer\BinaryData @@ -121,19 +331,895 @@ The Introjucer\BinaryData + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\maths + + + Juce Modules\juce_core\maths + + + Juce Modules\juce_core\maths + + + Juce Modules\juce_core\memory + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\time + + + Juce Modules\juce_core\time + + + Juce Modules\juce_core\time + + + Juce Modules\juce_core\files + + + Juce Modules\juce_core\files + + + Juce Modules\juce_core\files + + + Juce Modules\juce_core\files + + + Juce Modules\juce_core\files + + + Juce Modules\juce_core\files + + + Juce Modules\juce_core\network + + + Juce Modules\juce_core\network + + + Juce Modules\juce_core\network + + + Juce Modules\juce_core\network + + + Juce Modules\juce_core\streams + + + Juce Modules\juce_core\streams + + + Juce Modules\juce_core\streams + + + Juce Modules\juce_core\streams + + + Juce Modules\juce_core\streams + + + Juce Modules\juce_core\streams + + + Juce Modules\juce_core\streams + + + Juce Modules\juce_core\logging + + + Juce Modules\juce_core\logging + + + Juce Modules\juce_core\system + + + Juce Modules\juce_core\xml + + + Juce Modules\juce_core\xml + + + Juce Modules\juce_core\json + + + Juce Modules\juce_core\zip + + + Juce Modules\juce_core\zip + + + Juce Modules\juce_core\zip + + + Juce Modules\juce_core\unit_tests + + + Juce Modules\juce_core\misc + + + Juce Modules\juce_core\misc + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core + + + Juce Modules\juce_cryptography\encryption + + + Juce Modules\juce_cryptography\encryption + + + Juce Modules\juce_cryptography\encryption + + + Juce Modules\juce_cryptography\hashing + + + Juce Modules\juce_cryptography\hashing + + + Juce Modules\juce_cryptography + + + Juce Modules\juce_data_structures\values + + + Juce Modules\juce_data_structures\values + + + Juce Modules\juce_data_structures\undomanager + + + Juce Modules\juce_data_structures\app_properties + + + Juce Modules\juce_data_structures\app_properties + + + Juce Modules\juce_data_structures + + + Juce Modules\juce_events\messages + + + Juce Modules\juce_events\messages + + + Juce Modules\juce_events\messages + + + Juce Modules\juce_events\messages + + + Juce Modules\juce_events\timers + + + Juce Modules\juce_events\timers + + + Juce Modules\juce_events\broadcasters + + + Juce Modules\juce_events\broadcasters + + + Juce Modules\juce_events\broadcasters + + + Juce Modules\juce_events\interprocess + + + Juce Modules\juce_events\interprocess + + + Juce Modules\juce_events\native + + + Juce Modules\juce_events\native + + + Juce Modules\juce_events\native + + + Juce Modules\juce_events\native + + + Juce Modules\juce_events\native + + + Juce Modules\juce_events + + + Juce Modules\juce_graphics\colour + + + Juce Modules\juce_graphics\colour + + + Juce Modules\juce_graphics\colour + + + Juce Modules\juce_graphics\colour + + + Juce Modules\juce_graphics\contexts + + + Juce Modules\juce_graphics\contexts + + + Juce Modules\juce_graphics\contexts + + + Juce Modules\juce_graphics\images + + + Juce Modules\juce_graphics\images + + + Juce Modules\juce_graphics\images + + + Juce Modules\juce_graphics\images + + + Juce Modules\juce_graphics\image_formats + + + Juce Modules\juce_graphics\image_formats + + + Juce Modules\juce_graphics\image_formats + + + Juce Modules\juce_graphics\geometry + + + Juce Modules\juce_graphics\geometry + + + Juce Modules\juce_graphics\geometry + + + Juce Modules\juce_graphics\geometry + + + Juce Modules\juce_graphics\geometry + + + Juce Modules\juce_graphics\geometry + + + Juce Modules\juce_graphics\placement + + + Juce Modules\juce_graphics\placement + + + Juce Modules\juce_graphics\fonts + + + Juce Modules\juce_graphics\fonts + + + Juce Modules\juce_graphics\fonts + + + Juce Modules\juce_graphics\fonts + + + Juce Modules\juce_graphics\fonts + + + Juce Modules\juce_graphics\fonts + + + Juce Modules\juce_graphics\effects + + + Juce Modules\juce_graphics\effects + + + Juce Modules\juce_graphics\native + + + Juce Modules\juce_graphics\native + + + Juce Modules\juce_graphics\native + + + Juce Modules\juce_graphics\native + + + Juce Modules\juce_graphics\native + + + Juce Modules\juce_graphics\native + + + Juce Modules\juce_graphics\native + + + Juce Modules\juce_graphics\native + + + Juce Modules\juce_graphics\native + + + Juce Modules\juce_graphics + + + Juce Modules\juce_gui_basics\components + + + Juce Modules\juce_gui_basics\components + + + Juce Modules\juce_gui_basics\components + + + Juce Modules\juce_gui_basics\components + + + Juce Modules\juce_gui_basics\mouse + + + Juce Modules\juce_gui_basics\mouse + + + Juce Modules\juce_gui_basics\mouse + + + Juce Modules\juce_gui_basics\mouse + + + Juce Modules\juce_gui_basics\mouse + + + Juce Modules\juce_gui_basics\mouse + + + Juce Modules\juce_gui_basics\keyboard + + + Juce Modules\juce_gui_basics\keyboard + + + Juce Modules\juce_gui_basics\keyboard + + + Juce Modules\juce_gui_basics\keyboard + + + Juce Modules\juce_gui_basics\keyboard + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\windows + + + Juce Modules\juce_gui_basics\windows + + + Juce Modules\juce_gui_basics\windows + + + Juce Modules\juce_gui_basics\windows + + + Juce Modules\juce_gui_basics\windows + + + Juce Modules\juce_gui_basics\windows + + + Juce Modules\juce_gui_basics\windows + + + Juce Modules\juce_gui_basics\windows + + + Juce Modules\juce_gui_basics\windows + + + Juce Modules\juce_gui_basics\menus + + + Juce Modules\juce_gui_basics\menus + + + Juce Modules\juce_gui_basics\menus + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\buttons + + + Juce Modules\juce_gui_basics\buttons + + + Juce Modules\juce_gui_basics\buttons + + + Juce Modules\juce_gui_basics\buttons + + + Juce Modules\juce_gui_basics\buttons + + + Juce Modules\juce_gui_basics\buttons + + + Juce Modules\juce_gui_basics\buttons + + + Juce Modules\juce_gui_basics\buttons + + + Juce Modules\juce_gui_basics\buttons + + + Juce Modules\juce_gui_basics\positioning + + + Juce Modules\juce_gui_basics\positioning + + + Juce Modules\juce_gui_basics\positioning + + + Juce Modules\juce_gui_basics\positioning + + + Juce Modules\juce_gui_basics\positioning + + + Juce Modules\juce_gui_basics\positioning + + + Juce Modules\juce_gui_basics\positioning + + + Juce Modules\juce_gui_basics\drawables + + + Juce Modules\juce_gui_basics\drawables + + + Juce Modules\juce_gui_basics\drawables + + + Juce Modules\juce_gui_basics\drawables + + + Juce Modules\juce_gui_basics\drawables + + + Juce Modules\juce_gui_basics\drawables + + + Juce Modules\juce_gui_basics\drawables + + + Juce Modules\juce_gui_basics\drawables + + + Juce Modules\juce_gui_basics\properties + + + Juce Modules\juce_gui_basics\properties + + + Juce Modules\juce_gui_basics\properties + + + Juce Modules\juce_gui_basics\properties + + + Juce Modules\juce_gui_basics\properties + + + Juce Modules\juce_gui_basics\properties + + + Juce Modules\juce_gui_basics\properties + + + Juce Modules\juce_gui_basics\lookandfeel + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\commands + + + Juce Modules\juce_gui_basics\commands + + + Juce Modules\juce_gui_basics\commands + + + Juce Modules\juce_gui_basics\commands + + + Juce Modules\juce_gui_basics\misc + + + Juce Modules\juce_gui_basics\misc + + + Juce Modules\juce_gui_basics\application + + + Juce Modules\juce_gui_basics\native + + + Juce Modules\juce_gui_basics\native + + + Juce Modules\juce_gui_basics\native + + + Juce Modules\juce_gui_basics\native + + + Juce Modules\juce_gui_basics\native + + + Juce Modules\juce_gui_basics\native + + + Juce Modules\juce_gui_basics\native + + + Juce Modules\juce_gui_basics\native + + + Juce Modules\juce_gui_basics\native + + + Juce Modules\juce_gui_basics\native + + + Juce Modules\juce_gui_basics\native + + + Juce Modules\juce_gui_basics\native + + + Juce Modules\juce_gui_basics\native + + + Juce Modules\juce_gui_basics\native + + + Juce Modules\juce_gui_basics\native + + + Juce Modules\juce_gui_basics + + + Juce Modules\juce_gui_extra\code_editor + + + Juce Modules\juce_gui_extra\code_editor + + + Juce Modules\juce_gui_extra\code_editor + + + Juce Modules\juce_gui_extra\documents + + + Juce Modules\juce_gui_extra\lookandfeel + + + Juce Modules\juce_gui_extra\misc + + + Juce Modules\juce_gui_extra\misc + + + Juce Modules\juce_gui_extra\misc + + + Juce Modules\juce_gui_extra\misc + + + Juce Modules\juce_gui_extra\misc + + + Juce Modules\juce_gui_extra\misc + + + Juce Modules\juce_gui_extra\misc + + + Juce Modules\juce_gui_extra\native + + + Juce Modules\juce_gui_extra\native + + + Juce Modules\juce_gui_extra\native + + + Juce Modules\juce_gui_extra\native + + + Juce Modules\juce_gui_extra\native + + + Juce Modules\juce_gui_extra\native + + + Juce Modules\juce_gui_extra\native + + + Juce Modules\juce_gui_extra\native + + + Juce Modules\juce_gui_extra\native + + + Juce Modules\juce_gui_extra\native + + + Juce Modules\juce_gui_extra + Juce Library Code - + Juce Library Code - + Juce Library Code - + Juce Library Code - + + Juce Library Code + + + Juce Library Code + + + Juce Library Code + + Juce Library Code @@ -144,6 +1230,9 @@ The Introjucer\Application + + The Introjucer\Application + The Introjucer\Application @@ -165,12 +1254,15 @@ The Introjucer\Application - - The Introjucer\Code Editor + + The Introjucer\Project The Introjucer\Project + + The Introjucer\Project + The Introjucer\Project @@ -183,39 +1275,39 @@ The Introjucer\Project - - The Introjucer\Project - - - The Introjucer\Project - - - The Introjucer\Project - - - The Introjucer\Project - - - The Introjucer\Project - The Introjucer\Project - - The Introjucer\Project - The Introjucer\Project The Introjucer\Project - - The Introjucer\Project - The Introjucer\Project + + The Introjucer\Project Saving + + + The Introjucer\Project Saving + + + The Introjucer\Project Saving + + + The Introjucer\Project Saving + + + The Introjucer\Project Saving + + + The Introjucer\Project Saving + + + The Introjucer\Project Saving + The Introjucer\Utility @@ -243,6 +1335,9 @@ The Introjucer\Utility + + The Introjucer\Code Editor + The Introjucer\BinaryData @@ -255,6 +1350,957 @@ The Introjucer\BinaryData + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\maths + + + Juce Modules\juce_core\maths + + + Juce Modules\juce_core\maths + + + Juce Modules\juce_core\maths + + + Juce Modules\juce_core\maths + + + Juce Modules\juce_core\memory + + + Juce Modules\juce_core\memory + + + Juce Modules\juce_core\memory + + + Juce Modules\juce_core\memory + + + Juce Modules\juce_core\memory + + + Juce Modules\juce_core\memory + + + Juce Modules\juce_core\memory + + + Juce Modules\juce_core\memory + + + Juce Modules\juce_core\memory + + + Juce Modules\juce_core\memory + + + Juce Modules\juce_core\memory + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\time + + + Juce Modules\juce_core\time + + + Juce Modules\juce_core\time + + + Juce Modules\juce_core\files + + + Juce Modules\juce_core\files + + + Juce Modules\juce_core\files + + + Juce Modules\juce_core\files + + + Juce Modules\juce_core\files + + + Juce Modules\juce_core\files + + + Juce Modules\juce_core\files + + + Juce Modules\juce_core\network + + + Juce Modules\juce_core\network + + + Juce Modules\juce_core\network + + + Juce Modules\juce_core\network + + + Juce Modules\juce_core\streams + + + Juce Modules\juce_core\streams + + + Juce Modules\juce_core\streams + + + Juce Modules\juce_core\streams + + + Juce Modules\juce_core\streams + + + Juce Modules\juce_core\streams + + + Juce Modules\juce_core\streams + + + Juce Modules\juce_core\streams + + + Juce Modules\juce_core\logging + + + Juce Modules\juce_core\logging + + + Juce Modules\juce_core\system + + + Juce Modules\juce_core\system + + + Juce Modules\juce_core\system + + + Juce Modules\juce_core\system + + + Juce Modules\juce_core\xml + + + Juce Modules\juce_core\xml + + + Juce Modules\juce_core\json + + + Juce Modules\juce_core\zip + + + Juce Modules\juce_core\zip + + + Juce Modules\juce_core\zip + + + Juce Modules\juce_core\unit_tests + + + Juce Modules\juce_core\misc + + + Juce Modules\juce_core\misc + + + Juce Modules\juce_core\misc + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core + + + Juce Modules\juce_cryptography\encryption + + + Juce Modules\juce_cryptography\encryption + + + Juce Modules\juce_cryptography\encryption + + + Juce Modules\juce_cryptography\hashing + + + Juce Modules\juce_cryptography\hashing + + + Juce Modules\juce_cryptography + + + Juce Modules\juce_data_structures\values + + + Juce Modules\juce_data_structures\values + + + Juce Modules\juce_data_structures\undomanager + + + Juce Modules\juce_data_structures\undomanager + + + Juce Modules\juce_data_structures\app_properties + + + Juce Modules\juce_data_structures\app_properties + + + Juce Modules\juce_data_structures + + + Juce Modules\juce_events\messages + + + Juce Modules\juce_events\messages + + + Juce Modules\juce_events\messages + + + Juce Modules\juce_events\messages + + + Juce Modules\juce_events\messages + + + Juce Modules\juce_events\messages + + + Juce Modules\juce_events\timers + + + Juce Modules\juce_events\timers + + + Juce Modules\juce_events\broadcasters + + + Juce Modules\juce_events\broadcasters + + + Juce Modules\juce_events\broadcasters + + + Juce Modules\juce_events\broadcasters + + + Juce Modules\juce_events\broadcasters + + + Juce Modules\juce_events\broadcasters + + + Juce Modules\juce_events\interprocess + + + Juce Modules\juce_events\interprocess + + + Juce Modules\juce_events\native + + + Juce Modules\juce_events\native + + + Juce Modules\juce_events\native + + + Juce Modules\juce_events + + + Juce Modules\juce_graphics\colour + + + Juce Modules\juce_graphics\colour + + + Juce Modules\juce_graphics\colour + + + Juce Modules\juce_graphics\colour + + + Juce Modules\juce_graphics\colour + + + Juce Modules\juce_graphics\contexts + + + Juce Modules\juce_graphics\contexts + + + Juce Modules\juce_graphics\contexts + + + Juce Modules\juce_graphics\contexts + + + Juce Modules\juce_graphics\images + + + Juce Modules\juce_graphics\images + + + Juce Modules\juce_graphics\images + + + Juce Modules\juce_graphics\images + + + Juce Modules\juce_graphics\geometry + + + Juce Modules\juce_graphics\geometry + + + Juce Modules\juce_graphics\geometry + + + Juce Modules\juce_graphics\geometry + + + Juce Modules\juce_graphics\geometry + + + Juce Modules\juce_graphics\geometry + + + Juce Modules\juce_graphics\geometry + + + Juce Modules\juce_graphics\geometry + + + Juce Modules\juce_graphics\geometry + + + Juce Modules\juce_graphics\geometry + + + Juce Modules\juce_graphics\placement + + + Juce Modules\juce_graphics\placement + + + Juce Modules\juce_graphics\fonts + + + Juce Modules\juce_graphics\fonts + + + Juce Modules\juce_graphics\fonts + + + Juce Modules\juce_graphics\fonts + + + Juce Modules\juce_graphics\fonts + + + Juce Modules\juce_graphics\fonts + + + Juce Modules\juce_graphics\effects + + + Juce Modules\juce_graphics\effects + + + Juce Modules\juce_graphics\effects + + + Juce Modules\juce_graphics\native + + + Juce Modules\juce_graphics\native + + + Juce Modules\juce_graphics\native + + + Juce Modules\juce_graphics + + + Juce Modules\juce_gui_basics\components + + + Juce Modules\juce_gui_basics\components + + + Juce Modules\juce_gui_basics\components + + + Juce Modules\juce_gui_basics\components + + + Juce Modules\juce_gui_basics\components + + + Juce Modules\juce_gui_basics\mouse + + + Juce Modules\juce_gui_basics\mouse + + + Juce Modules\juce_gui_basics\mouse + + + Juce Modules\juce_gui_basics\mouse + + + Juce Modules\juce_gui_basics\mouse + + + Juce Modules\juce_gui_basics\mouse + + + Juce Modules\juce_gui_basics\mouse + + + Juce Modules\juce_gui_basics\mouse + + + Juce Modules\juce_gui_basics\mouse + + + Juce Modules\juce_gui_basics\mouse + + + Juce Modules\juce_gui_basics\mouse + + + Juce Modules\juce_gui_basics\keyboard + + + Juce Modules\juce_gui_basics\keyboard + + + Juce Modules\juce_gui_basics\keyboard + + + Juce Modules\juce_gui_basics\keyboard + + + Juce Modules\juce_gui_basics\keyboard + + + Juce Modules\juce_gui_basics\keyboard + + + Juce Modules\juce_gui_basics\keyboard + + + Juce Modules\juce_gui_basics\keyboard + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\windows + + + Juce Modules\juce_gui_basics\windows + + + Juce Modules\juce_gui_basics\windows + + + Juce Modules\juce_gui_basics\windows + + + Juce Modules\juce_gui_basics\windows + + + Juce Modules\juce_gui_basics\windows + + + Juce Modules\juce_gui_basics\windows + + + Juce Modules\juce_gui_basics\windows + + + Juce Modules\juce_gui_basics\windows + + + Juce Modules\juce_gui_basics\windows + + + Juce Modules\juce_gui_basics\menus + + + Juce Modules\juce_gui_basics\menus + + + Juce Modules\juce_gui_basics\menus + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\buttons + + + Juce Modules\juce_gui_basics\buttons + + + Juce Modules\juce_gui_basics\buttons + + + Juce Modules\juce_gui_basics\buttons + + + Juce Modules\juce_gui_basics\buttons + + + Juce Modules\juce_gui_basics\buttons + + + Juce Modules\juce_gui_basics\buttons + + + Juce Modules\juce_gui_basics\buttons + + + Juce Modules\juce_gui_basics\buttons + + + Juce Modules\juce_gui_basics\positioning + + + Juce Modules\juce_gui_basics\positioning + + + Juce Modules\juce_gui_basics\positioning + + + Juce Modules\juce_gui_basics\positioning + + + Juce Modules\juce_gui_basics\positioning + + + Juce Modules\juce_gui_basics\positioning + + + Juce Modules\juce_gui_basics\positioning + + + Juce Modules\juce_gui_basics\drawables + + + Juce Modules\juce_gui_basics\drawables + + + Juce Modules\juce_gui_basics\drawables + + + Juce Modules\juce_gui_basics\drawables + + + Juce Modules\juce_gui_basics\drawables + + + Juce Modules\juce_gui_basics\drawables + + + Juce Modules\juce_gui_basics\drawables + + + Juce Modules\juce_gui_basics\properties + + + Juce Modules\juce_gui_basics\properties + + + Juce Modules\juce_gui_basics\properties + + + Juce Modules\juce_gui_basics\properties + + + Juce Modules\juce_gui_basics\properties + + + Juce Modules\juce_gui_basics\properties + + + Juce Modules\juce_gui_basics\properties + + + Juce Modules\juce_gui_basics\lookandfeel + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\commands + + + Juce Modules\juce_gui_basics\commands + + + Juce Modules\juce_gui_basics\commands + + + Juce Modules\juce_gui_basics\commands + + + Juce Modules\juce_gui_basics\commands + + + Juce Modules\juce_gui_basics\misc + + + Juce Modules\juce_gui_basics\misc + + + Juce Modules\juce_gui_basics\application + + + Juce Modules\juce_gui_basics\application + + + Juce Modules\juce_gui_basics\native + + + Juce Modules\juce_gui_basics + + + Juce Modules\juce_gui_extra\code_editor + + + Juce Modules\juce_gui_extra\code_editor + + + Juce Modules\juce_gui_extra\code_editor + + + Juce Modules\juce_gui_extra\code_editor + + + Juce Modules\juce_gui_extra\documents + + + Juce Modules\juce_gui_extra\embedding + + + Juce Modules\juce_gui_extra\embedding + + + Juce Modules\juce_gui_extra\embedding + + + Juce Modules\juce_gui_extra\lookandfeel + + + Juce Modules\juce_gui_extra\misc + + + Juce Modules\juce_gui_extra\misc + + + Juce Modules\juce_gui_extra\misc + + + Juce Modules\juce_gui_extra\misc + + + Juce Modules\juce_gui_extra\misc + + + Juce Modules\juce_gui_extra\misc + + + Juce Modules\juce_gui_extra\misc + + + Juce Modules\juce_gui_extra\misc + + + Juce Modules\juce_gui_extra\misc + + + Juce Modules\juce_gui_extra\native + + + Juce Modules\juce_gui_extra + Juce Library Code diff --git a/extras/Introjucer/Builds/VisualStudio2010/icon.ico b/extras/Introjucer/Builds/VisualStudio2010/icon.ico index b5dbab53ed..8a216cd7f4 100644 Binary files a/extras/Introjucer/Builds/VisualStudio2010/icon.ico and b/extras/Introjucer/Builds/VisualStudio2010/icon.ico differ diff --git a/extras/Introjucer/Introjucer.jucer b/extras/Introjucer/Introjucer.jucer index 04798859c4..f3655fc78a 100644 --- a/extras/Introjucer/Introjucer.jucer +++ b/extras/Introjucer/Introjucer.jucer @@ -10,31 +10,60 @@ pluginIsSynth="0" pluginWantsMidiIn="0" pluginProducesMidiOut="0" pluginSilenceInIsSilenceOut="0" pluginTailLength="0" pluginEditorRequiresKeys="0" pluginAUExportPrefix="TheIntrojucerAU" pluginAUViewClass="TheIntrojucerAU_V1" - pluginRTASCategory="" bundleIdentifier="com.rawmaterialsoftware.introjucer" - bigIcon="rVgowdy"> + pluginRTASCategory="" bundleIdentifier="com.rawmaterialsoftware.introjucer"> + juceFolder="../.." documentExtensions=".jucer" objCExtraSuffix="zNNCr" + bigIcon="rVgowdy"> + + + + + + rtasFolder="c:\SDKs\PT_80_SDK" juceFolder="../.." libraryType="1" + bigIcon="rVgowdy"> + + + + + - + rtasFolder="c:\SDKs\PT_80_SDK" juceFolder="../.." libraryType="1" + bigIcon="rVgowdy"> + + + + + + + + + + + + rtasFolder="c:\SDKs\PT_80_SDK" libraryType="1" juceFolder="../.." + bigIcon="rVgowdy"> + + + + + - - - - + + - - - - + + + - - - - - - - - - + + + + + + + + + + + @@ -153,6 +183,12 @@ + + + + @@ -183,13 +219,18 @@ + JUCE_USE_FLAC="disabled" JUCE_USE_CDBURNER="disabled" JUCE_USE_CDREADER="disabled" + JUCE_USE_CAMERA="disabled" JUCE_PLUGINHOST_VST="disabled" JUCE_PLUGINHOST_AU="disabled" + JUCE_USE_OGGVORBIS="disabled" JUCE_USE_COREIMAGE_LOADER="disabled"/> + + + + + + + + + + + diff --git a/extras/Introjucer/JuceLibraryCode/AppConfig.h b/extras/Introjucer/JuceLibraryCode/AppConfig.h index f40ea35f2c..1a37c9571c 100644 --- a/extras/Introjucer/JuceLibraryCode/AppConfig.h +++ b/extras/Introjucer/JuceLibraryCode/AppConfig.h @@ -3,39 +3,80 @@ IMPORTANT! This file is auto-generated each time you save your project - if you alter its contents, your changes may be overwritten! - If you want to change any of these values, use the Introjucer to do so, rather than - editing this file directly! + If you want to change any of these values, use the Introjucer to do so, + rather than editing this file directly! - Any commented-out settings will fall back to using the default values that - they are given in juce_Config.h + Any commented-out settings will assume their default values. */ -//#define JUCE_FORCE_DEBUG -//#define JUCE_LOG_ASSERTIONS -#define JUCE_ASIO 0 -#define JUCE_WASAPI 0 -#define JUCE_DIRECTSOUND 0 -//#define JUCE_DIRECTSHOW -//#define JUCE_MEDIAFOUNDATION -#define JUCE_ALSA 0 -#define JUCE_QUICKTIME 0 -#define JUCE_OPENGL 0 -//#define JUCE_DIRECT2D -#define JUCE_USE_FLAC 0 -#define JUCE_USE_OGGVORBIS 0 -#define JUCE_USE_CDBURNER 0 -#define JUCE_USE_CDREADER 0 -#define JUCE_USE_CAMERA 0 -//#define JUCE_ENABLE_REPAINT_DEBUGGING -//#define JUCE_USE_XINERAMA -//#define JUCE_USE_XSHM -//#define JUCE_USE_XRENDER -//#define JUCE_USE_XCURSOR -#define JUCE_PLUGINHOST_VST 0 -#define JUCE_PLUGINHOST_AU 0 -//#define JUCE_ONLY_BUILD_CORE_LIBRARY -//#define JUCE_WEB_BROWSER -//#define JUCE_SUPPORT_CARBON -//#define JUCE_CHECK_MEMORY_LEAKS -//#define JUCE_CATCH_UNHANDLED_EXCEPTIONS +#ifndef __JUCE_APPCONFIG_M70QFTRRK__ +#define __JUCE_APPCONFIG_M70QFTRRK__ + +//============================================================================== +#define JUCE_MODULE_AVAILABLE_juce_core 1 +#define JUCE_MODULE_AVAILABLE_juce_cryptography 1 +#define JUCE_MODULE_AVAILABLE_juce_data_structures 1 +#define JUCE_MODULE_AVAILABLE_juce_events 1 +#define JUCE_MODULE_AVAILABLE_juce_graphics 1 +#define JUCE_MODULE_AVAILABLE_juce_gui_basics 1 +#define JUCE_MODULE_AVAILABLE_juce_gui_extra 1 + +//============================================================================== +// juce_core flags: + +#ifndef JUCE_FORCE_DEBUG + //#define JUCE_FORCE_DEBUG +#endif + +#ifndef JUCE_LOG_ASSERTIONS + //#define JUCE_LOG_ASSERTIONS +#endif + +#ifndef JUCE_CHECK_MEMORY_LEAKS + //#define JUCE_CHECK_MEMORY_LEAKS +#endif + +#ifndef JUCE_DONT_AUTOLINK_TO_WIN32_LIBRARIES + //#define JUCE_DONT_AUTOLINK_TO_WIN32_LIBRARIES +#endif + +//============================================================================== +// juce_graphics flags: + +#ifndef JUCE_USE_COREIMAGE_LOADER + #define JUCE_USE_COREIMAGE_LOADER 0 +#endif + +#ifndef JUCE_USE_DIRECTWRITE + //#define JUCE_USE_DIRECTWRITE +#endif + +//============================================================================== +// juce_gui_basics flags: + +#ifndef JUCE_ENABLE_REPAINT_DEBUGGING + //#define JUCE_ENABLE_REPAINT_DEBUGGING +#endif + +#ifndef JUCE_USE_XSHM + //#define JUCE_USE_XSHM +#endif + +#ifndef JUCE_USE_XRENDER + //#define JUCE_USE_XRENDER +#endif + +#ifndef JUCE_USE_XCURSOR + //#define JUCE_USE_XCURSOR +#endif + +//============================================================================== +// juce_gui_extra flags: + +#ifndef JUCE_WEB_BROWSER + //#define JUCE_WEB_BROWSER +#endif + + +#endif // __JUCE_APPCONFIG_M70QFTRRK__ diff --git a/extras/Introjucer/JuceLibraryCode/BinaryData.cpp b/extras/Introjucer/JuceLibraryCode/BinaryData.cpp index 733c4c6032..d9fa19fcf3 100644 --- a/extras/Introjucer/JuceLibraryCode/BinaryData.cpp +++ b/extras/Introjucer/JuceLibraryCode/BinaryData.cpp @@ -5,38 +5,8 @@ */ -#include "BinaryData.h" - - -const char* BinaryData::getNamedResource (const char* resourceNameUTF8, int& numBytes) throw() +namespace BinaryData { - int hash = 0; - if (resourceNameUTF8 != 0) - while (*resourceNameUTF8 != 0) - hash = 31 * hash + *resourceNameUTF8++; - - switch (hash) - { - case 0x44be9398: numBytes = BinaryData::AudioPluginXCodeScript_txtSize; return BinaryData::AudioPluginXCodeScript_txt; - case 0x950fd7dd: numBytes = BinaryData::brushed_aluminium_pngSize; return BinaryData::brushed_aluminium_png; - case 0x27c5a93a: numBytes = BinaryData::jucer_AudioPluginEditorTemplate_cppSize; return BinaryData::jucer_AudioPluginEditorTemplate_cpp; - case 0x4d0721bf: numBytes = BinaryData::jucer_AudioPluginEditorTemplate_hSize; return BinaryData::jucer_AudioPluginEditorTemplate_h; - case 0x51b49ac5: numBytes = BinaryData::jucer_AudioPluginFilterTemplate_cppSize; return BinaryData::jucer_AudioPluginFilterTemplate_cpp; - case 0x488afa0a: numBytes = BinaryData::jucer_AudioPluginFilterTemplate_hSize; return BinaryData::jucer_AudioPluginFilterTemplate_h; - case 0x8905395b: numBytes = BinaryData::jucer_MainConsoleAppTemplate_cppSize; return BinaryData::jucer_MainConsoleAppTemplate_cpp; - case 0x7a0186b1: numBytes = BinaryData::jucer_MainTemplate_cppSize; return BinaryData::jucer_MainTemplate_cpp; - case 0x02a2a077: numBytes = BinaryData::jucer_NewCppFileTemplate_cppSize; return BinaryData::jucer_NewCppFileTemplate_cpp; - case 0x0842c43c: numBytes = BinaryData::jucer_NewCppFileTemplate_hSize; return BinaryData::jucer_NewCppFileTemplate_h; - case 0x3f052be8: numBytes = BinaryData::jucer_WindowTemplate_cppSize; return BinaryData::jucer_WindowTemplate_cpp; - case 0xb20377ed: numBytes = BinaryData::jucer_WindowTemplate_hSize; return BinaryData::jucer_WindowTemplate_h; - case 0x154a7275: numBytes = BinaryData::juce_icon_pngSize; return BinaryData::juce_icon_png; - default: break; - } - - numBytes = 0; - return 0; -} - //================== AudioPluginXCodeScript.txt ================== static const unsigned char temp_43731c40[] = @@ -85,7 +55,7 @@ static const unsigned char temp_43731c40[] = " cp -r \"$original\" \"$RTAS\"\r\n" "fi\r\n"; -const char* BinaryData::AudioPluginXCodeScript_txt = (const char*) temp_43731c40; +const char* AudioPluginXCodeScript_txt = (const char*) temp_43731c40; //================== brushed_aluminium.png ================== static const unsigned char temp_9aa09877[] = @@ -297,14 +267,14 @@ static const unsigned char temp_9aa09877[] = 141,20,180,27,72,224,103,149,105,220,112,255,4,89,131,64,4,23,42,115,215,231,245,156,43,234,151,42,11,138,116,121,82,135,79,3,255,178,101,152,75,177,57,53,232,244,11,46,246,251,67,98,174,121,193,110,222,30,8,28,132,216,112,88,219,73,10,62,169,115,60, 233,137,16,177,58,98,69,178,95,87,93,157,5,174,93,143,182,244,186,210,167,70,131,11,5,88,2,12,0,52,103,80,26,178,200,170,15,0,0,0,0,73,69,78,68,174,66,96,130,0,0 }; -const char* BinaryData::brushed_aluminium_png = (const char*) temp_9aa09877; +const char* brushed_aluminium_png = (const char*) temp_9aa09877; //================== jucer_AudioPluginEditorTemplate.cpp ================== static const unsigned char temp_6eda5614[] = "/*\r\n" " ==============================================================================\r\n" "\r\n" -" This file was auto-generated by the Jucer!\r\n" +" This file was auto-generated by the Introjucer!\r\n" "\r\n" " It contains the basic startup code for a Juce application.\r\n" "\r\n" @@ -337,14 +307,14 @@ static const unsigned char temp_6eda5614[] = " Justification::centred, 1);\r\n" "}\r\n"; -const char* BinaryData::jucer_AudioPluginEditorTemplate_cpp = (const char*) temp_6eda5614; +const char* jucer_AudioPluginEditorTemplate_cpp = (const char*) temp_6eda5614; //================== jucer_AudioPluginEditorTemplate.h ================== static const unsigned char temp_67353d19[] = "/*\r\n" " ==============================================================================\r\n" "\r\n" -" This file was auto-generated by the Jucer!\r\n" +" This file was auto-generated by the Introjucer!\r\n" "\r\n" " It contains the basic startup code for a Juce application.\r\n" "\r\n" @@ -374,14 +344,14 @@ static const unsigned char temp_67353d19[] = "\r\n" "#endif // HEADERGUARD\r\n"; -const char* BinaryData::jucer_AudioPluginEditorTemplate_h = (const char*) temp_67353d19; +const char* jucer_AudioPluginEditorTemplate_h = (const char*) temp_67353d19; //================== jucer_AudioPluginFilterTemplate.cpp ================== static const unsigned char temp_98c9479f[] = "/*\r\n" " ==============================================================================\r\n" "\r\n" -" This file was auto-generated by the Jucer!\r\n" +" This file was auto-generated!\r\n" "\r\n" " It contains the basic startup code for a Juce application.\r\n" "\r\n" @@ -556,14 +526,14 @@ static const unsigned char temp_98c9479f[] = " return new FILTERCLASSNAME();\r\n" "}\r\n"; -const char* BinaryData::jucer_AudioPluginFilterTemplate_cpp = (const char*) temp_98c9479f; +const char* jucer_AudioPluginFilterTemplate_cpp = (const char*) temp_98c9479f; //================== jucer_AudioPluginFilterTemplate.h ================== static const unsigned char temp_62b91564[] = "/*\r\n" " ==============================================================================\r\n" "\r\n" -" This file was auto-generated by the Jucer!\r\n" +" This file was auto-generated!\r\n" "\r\n" " It contains the basic startup code for a Juce application.\r\n" "\r\n" @@ -633,14 +603,14 @@ static const unsigned char temp_62b91564[] = "\r\n" "#endif // HEADERGUARD\r\n"; -const char* BinaryData::jucer_AudioPluginFilterTemplate_h = (const char*) temp_62b91564; +const char* jucer_AudioPluginFilterTemplate_h = (const char*) temp_62b91564; //================== jucer_MainConsoleAppTemplate.cpp ================== static const unsigned char temp_794304c3[] = "/*\r\n" " ==============================================================================\r\n" "\r\n" -" This file was auto-generated by the Jucer!\r\n" +" This file was auto-generated!\r\n" "\r\n" " It contains the basic startup code for a Juce application.\r\n" "\r\n" @@ -660,14 +630,14 @@ static const unsigned char temp_794304c3[] = " return 0;\r\n" "}\r\n"; -const char* BinaryData::jucer_MainConsoleAppTemplate_cpp = (const char*) temp_794304c3; +const char* jucer_MainConsoleAppTemplate_cpp = (const char*) temp_794304c3; //================== jucer_MainTemplate.cpp ================== static const unsigned char temp_292512d9[] = "/*\r\n" " ==============================================================================\r\n" "\r\n" -" This file was auto-generated by the Jucer!\r\n" +" This file was auto-generated by the Introjucer!\r\n" "\r\n" " It contains the basic startup code for a Juce application.\r\n" "\r\n" @@ -738,7 +708,7 @@ static const unsigned char temp_292512d9[] = "// This macro generates the main() routine that starts the app.\r\n" "START_JUCE_APPLICATION(APPCLASSNAME)\r\n"; -const char* BinaryData::jucer_MainTemplate_cpp = (const char*) temp_292512d9; +const char* jucer_MainTemplate_cpp = (const char*) temp_292512d9; //================== jucer_NewCppFileTemplate.cpp ================== static const unsigned char temp_79decf5f[] = @@ -753,7 +723,7 @@ static const unsigned char temp_79decf5f[] = "*/\r\n" "\r\n"; -const char* BinaryData::jucer_NewCppFileTemplate_cpp = (const char*) temp_79decf5f; +const char* jucer_NewCppFileTemplate_cpp = (const char*) temp_79decf5f; //================== jucer_NewCppFileTemplate.h ================== static const unsigned char temp_70d8d24[] = @@ -776,14 +746,14 @@ static const unsigned char temp_70d8d24[] = "\r\n" "#endif // HEADERGUARD\r\n"; -const char* BinaryData::jucer_NewCppFileTemplate_h = (const char*) temp_70d8d24; +const char* jucer_NewCppFileTemplate_h = (const char*) temp_70d8d24; //================== jucer_WindowTemplate.cpp ================== static const unsigned char temp_6fd7e50[] = "/*\r\n" " ==============================================================================\r\n" "\r\n" -" This file was auto-generated by the Jucer!\r\n" +" This file was auto-generated!\r\n" "\r\n" " It contains the basic outline for a simple desktop window.\r\n" "\r\n" @@ -812,14 +782,14 @@ static const unsigned char temp_6fd7e50[] = " JUCEApplication::getInstance()->systemRequestedQuit();\r\n" "}\r\n"; -const char* BinaryData::jucer_WindowTemplate_cpp = (const char*) temp_6fd7e50; +const char* jucer_WindowTemplate_cpp = (const char*) temp_6fd7e50; //================== jucer_WindowTemplate.h ================== static const unsigned char temp_613d4455[] = "/*\r\n" " ==============================================================================\r\n" "\r\n" -" This file was auto-generated by the Jucer!\r\n" +" This file was auto-generated!\r\n" "\r\n" " It contains the basic outline for a simple desktop window.\r\n" "\r\n" @@ -858,7 +828,7 @@ static const unsigned char temp_613d4455[] = "\r\n" "#endif // HEADERGUARD\r\n"; -const char* BinaryData::jucer_WindowTemplate_h = (const char*) temp_613d4455; +const char* jucer_WindowTemplate_h = (const char*) temp_613d4455; //================== juce_icon.png ================== static const unsigned char temp_ee6f0c0f[] = @@ -1139,4 +1109,49 @@ static const unsigned char temp_ee6f0c0f[] = 169,9,0,87,15,129,129,1,247,197,140,255,7,123,160,2,4,208,80,74,0,184,18,2,250,200,222,95,34,70,253,24,73,176,3,215,216,5,190,132,57,100,0,64,0,13,197,4,64,76,201,64,40,146,73,77,0,164,202,15,25,0,16,96,0,155,121,235,71,10,157,3,42,0,0,0,0,73,69,78,68, 174,66,96,130,0,0 }; -const char* BinaryData::juce_icon_png = (const char*) temp_ee6f0c0f; +const char* juce_icon_png = (const char*) temp_ee6f0c0f; + + +const char* getNamedResource (const char* resourceNameUTF8, int& numBytes) throw() +{ + int hash = 0; + if (resourceNameUTF8 != 0) + while (*resourceNameUTF8 != 0) + hash = 31 * hash + *resourceNameUTF8++; + + switch (hash) + { + case 0x44be9398: + case 0x2981a553: numBytes = 1449; return AudioPluginXCodeScript_txt; + case 0x950fd7dd: + case 0xa6cfe0e2: numBytes = 14724; return brushed_aluminium_png; + case 0x27c5a93a: + case 0xb6575890: numBytes = 1008; return jucer_AudioPluginEditorTemplate_cpp; + case 0x4d0721bf: + case 0xc244271a: numBytes = 799; return jucer_AudioPluginEditorTemplate_h; + case 0x51b49ac5: + case 0xc68aa4a1: numBytes = 4455; return jucer_AudioPluginFilterTemplate_cpp; + case 0x488afa0a: + case 0x99c7f951: numBytes = 2400; return jucer_AudioPluginFilterTemplate_h; + case 0x8905395b: + case 0x84a71cc0: numBytes = 470; return jucer_MainConsoleAppTemplate_cpp; + case 0x7a0186b1: + case 0x73760f7c: numBytes = 1825; return jucer_MainTemplate_cpp; + case 0x02a2a077: + case 0x9a5d0862: numBytes = 232; return jucer_NewCppFileTemplate_cpp; + case 0x0842c43c: + case 0xfbfcda3c: numBytes = 308; return jucer_NewCppFileTemplate_h; + case 0x3f052be8: + case 0xb905d1ba: numBytes = 781; return jucer_WindowTemplate_cpp; + case 0xb20377ed: + case 0x959d5d38: numBytes = 1216; return jucer_WindowTemplate_h; + case 0x154a7275: + case 0xcd05ca61: numBytes = 19826; return juce_icon_png; + default: break; + } + + numBytes = 0; + return 0; +} + +} diff --git a/extras/Introjucer/JuceLibraryCode/BinaryData.h b/extras/Introjucer/JuceLibraryCode/BinaryData.h index c6d94d1f68..0fd7c5355d 100644 --- a/extras/Introjucer/JuceLibraryCode/BinaryData.h +++ b/extras/Introjucer/JuceLibraryCode/BinaryData.h @@ -14,22 +14,22 @@ namespace BinaryData const int brushed_aluminium_pngSize = 14724; extern const char* jucer_AudioPluginEditorTemplate_cpp; - const int jucer_AudioPluginEditorTemplate_cppSize = 1003; + const int jucer_AudioPluginEditorTemplate_cppSize = 1008; extern const char* jucer_AudioPluginEditorTemplate_h; - const int jucer_AudioPluginEditorTemplate_hSize = 794; + const int jucer_AudioPluginEditorTemplate_hSize = 799; extern const char* jucer_AudioPluginFilterTemplate_cpp; - const int jucer_AudioPluginFilterTemplate_cppSize = 4468; + const int jucer_AudioPluginFilterTemplate_cppSize = 4455; extern const char* jucer_AudioPluginFilterTemplate_h; - const int jucer_AudioPluginFilterTemplate_hSize = 2413; + const int jucer_AudioPluginFilterTemplate_hSize = 2400; extern const char* jucer_MainConsoleAppTemplate_cpp; - const int jucer_MainConsoleAppTemplate_cppSize = 483; + const int jucer_MainConsoleAppTemplate_cppSize = 470; extern const char* jucer_MainTemplate_cpp; - const int jucer_MainTemplate_cppSize = 1820; + const int jucer_MainTemplate_cppSize = 1825; extern const char* jucer_NewCppFileTemplate_cpp; const int jucer_NewCppFileTemplate_cppSize = 232; @@ -38,10 +38,10 @@ namespace BinaryData const int jucer_NewCppFileTemplate_hSize = 308; extern const char* jucer_WindowTemplate_cpp; - const int jucer_WindowTemplate_cppSize = 794; + const int jucer_WindowTemplate_cppSize = 781; extern const char* jucer_WindowTemplate_h; - const int jucer_WindowTemplate_hSize = 1229; + const int jucer_WindowTemplate_hSize = 1216; extern const char* juce_icon_png; const int juce_icon_pngSize = 19826; @@ -49,4 +49,25 @@ namespace BinaryData // 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). const char* getNamedResource (const char* resourceNameUTF8, int& dataSizeInBytes) throw(); + + //============================================================================== + // This class acts as an ImageProvider that will access the BinaryData images + class ImageProvider : public juce::ComponentBuilder::ImageProvider + { + public: + ImageProvider() noexcept {} + + juce::Image getImageForIdentifier (const juce::var& imageIdentifier) + { + int dataSize = 0; + const char* const data = getNamedResource (imageIdentifier.toString().toUTF8(), dataSize); + + if (data != nullptr) + return juce::ImageCache::getFromMemory (data, dataSize); + + return juce::Image(); + } + + juce::var getIdentifierForImage (const juce::Image&) { return juce::var(); } + }; } diff --git a/extras/Introjucer/JuceLibraryCode/JuceHeader.h b/extras/Introjucer/JuceLibraryCode/JuceHeader.h index cd2f7133c8..77cab3b5ed 100644 --- a/extras/Introjucer/JuceLibraryCode/JuceHeader.h +++ b/extras/Introjucer/JuceLibraryCode/JuceHeader.h @@ -4,8 +4,8 @@ project - if you alter its contents, your changes may be overwritten! This is the header file that your files should include in order to get all the - Juce library headers. You should NOT include juce.h or juce_amalgamated.h directly in - your own source files, because that wouldn't pick up the correct Juce configuration + JUCE library headers. You should avoid including the JUCE headers directly in + your own source files, because that wouldn't pick up the correct configuration options for your app. */ @@ -14,9 +14,21 @@ #define __APPHEADERFILE_M70QFTRRK__ #include "AppConfig.h" -#include "../../../juce_amalgamated.h" +#include "modules/juce_core/juce_core.h" +#include "modules/juce_cryptography/juce_cryptography.h" +#include "modules/juce_data_structures/juce_data_structures.h" +#include "modules/juce_events/juce_events.h" +#include "modules/juce_graphics/juce_graphics.h" +#include "modules/juce_gui_basics/juce_gui_basics.h" +#include "modules/juce_gui_extra/juce_gui_extra.h" #include "BinaryData.h" +#if ! DONT_SET_USING_JUCE_NAMESPACE + // If your code uses a lot of JUCE classes, then this will obviously save you + // a lot of typing, but can be disabled by setting DONT_SET_USING_JUCE_NAMESPACE. + using namespace juce; +#endif + namespace ProjectInfo { const char* const projectName = "The Introjucer"; diff --git a/extras/Introjucer/JuceLibraryCode/JuceLibraryCode3.cpp b/extras/Introjucer/JuceLibraryCode/JuceLibraryCode3.cpp deleted file mode 100644 index 5d7de97f50..0000000000 --- a/extras/Introjucer/JuceLibraryCode/JuceLibraryCode3.cpp +++ /dev/null @@ -1,15 +0,0 @@ -/* - - IMPORTANT! This file is auto-generated each time you save your - project - if you alter its contents, your changes may be overwritten! - - This file pulls in all the Juce source code, and builds it using the settings - defined in AppConfig.h. - - If you want to change the method by which Juce is linked into your app, use the - Jucer to change it, rather than trying to edit this file directly. - -*/ - -#include "AppConfig.h" -#include "../../../amalgamation/juce_amalgamated3.cpp" diff --git a/extras/Introjucer/JuceLibraryCode/JuceLibraryCode3.mm b/extras/Introjucer/JuceLibraryCode/JuceLibraryCode3.mm deleted file mode 100644 index 5d7de97f50..0000000000 --- a/extras/Introjucer/JuceLibraryCode/JuceLibraryCode3.mm +++ /dev/null @@ -1,15 +0,0 @@ -/* - - IMPORTANT! This file is auto-generated each time you save your - project - if you alter its contents, your changes may be overwritten! - - This file pulls in all the Juce source code, and builds it using the settings - defined in AppConfig.h. - - If you want to change the method by which Juce is linked into your app, use the - Jucer to change it, rather than trying to edit this file directly. - -*/ - -#include "AppConfig.h" -#include "../../../amalgamation/juce_amalgamated3.cpp" diff --git a/extras/Introjucer/JuceLibraryCode/JuceLibraryCode4.cpp b/extras/Introjucer/JuceLibraryCode/JuceLibraryCode4.cpp deleted file mode 100644 index 1ece5dc3d2..0000000000 --- a/extras/Introjucer/JuceLibraryCode/JuceLibraryCode4.cpp +++ /dev/null @@ -1,15 +0,0 @@ -/* - - IMPORTANT! This file is auto-generated each time you save your - project - if you alter its contents, your changes may be overwritten! - - This file pulls in all the Juce source code, and builds it using the settings - defined in AppConfig.h. - - If you want to change the method by which Juce is linked into your app, use the - Jucer to change it, rather than trying to edit this file directly. - -*/ - -#include "AppConfig.h" -#include "../../../amalgamation/juce_amalgamated4.cpp" diff --git a/extras/Introjucer/JuceLibraryCode/JuceLibraryCode4.mm b/extras/Introjucer/JuceLibraryCode/JuceLibraryCode4.mm deleted file mode 100644 index 1ece5dc3d2..0000000000 --- a/extras/Introjucer/JuceLibraryCode/JuceLibraryCode4.mm +++ /dev/null @@ -1,15 +0,0 @@ -/* - - IMPORTANT! This file is auto-generated each time you save your - project - if you alter its contents, your changes may be overwritten! - - This file pulls in all the Juce source code, and builds it using the settings - defined in AppConfig.h. - - If you want to change the method by which Juce is linked into your app, use the - Jucer to change it, rather than trying to edit this file directly. - -*/ - -#include "AppConfig.h" -#include "../../../amalgamation/juce_amalgamated4.cpp" diff --git a/extras/Introjucer/JuceLibraryCode/ReadMe.txt b/extras/Introjucer/JuceLibraryCode/ReadMe.txt new file mode 100644 index 0000000000..f6c3564e99 --- /dev/null +++ b/extras/Introjucer/JuceLibraryCode/ReadMe.txt @@ -0,0 +1,12 @@ + + Important Note!! + ================ + +The purpose of this folder is to contain files that are auto-generated by the Introjucer, +and ALL files in this folder will be mercilessly DELETED and completely re-written whenever +the Introjucer saves your project. + +Therefore, it's a bad idea to make any manual changes to the files in here, or to +put any of your own files in here if you don't want to lose them. (Of course you may choose +to add the folder's contents to your version-control system so that you can re-merge your own +modifications after the Introjucer has saved its changes). diff --git a/extras/Introjucer/JuceLibraryCode/modules/juce_core/juce_core.h b/extras/Introjucer/JuceLibraryCode/modules/juce_core/juce_core.h new file mode 100644 index 0000000000..ee07e01a50 --- /dev/null +++ b/extras/Introjucer/JuceLibraryCode/modules/juce_core/juce_core.h @@ -0,0 +1,5 @@ +// This is an auto-generated file to redirect any included +// module headers to the correct external folder. + +#include "../../../../../modules/juce_core/juce_core.h" + diff --git a/extras/Introjucer/JuceLibraryCode/modules/juce_cryptography/juce_cryptography.h b/extras/Introjucer/JuceLibraryCode/modules/juce_cryptography/juce_cryptography.h new file mode 100644 index 0000000000..860c0221c7 --- /dev/null +++ b/extras/Introjucer/JuceLibraryCode/modules/juce_cryptography/juce_cryptography.h @@ -0,0 +1,5 @@ +// This is an auto-generated file to redirect any included +// module headers to the correct external folder. + +#include "../../../../../modules/juce_cryptography/juce_cryptography.h" + diff --git a/extras/Introjucer/JuceLibraryCode/modules/juce_data_structures/juce_data_structures.h b/extras/Introjucer/JuceLibraryCode/modules/juce_data_structures/juce_data_structures.h new file mode 100644 index 0000000000..00f01d46aa --- /dev/null +++ b/extras/Introjucer/JuceLibraryCode/modules/juce_data_structures/juce_data_structures.h @@ -0,0 +1,5 @@ +// This is an auto-generated file to redirect any included +// module headers to the correct external folder. + +#include "../../../../../modules/juce_data_structures/juce_data_structures.h" + diff --git a/extras/Introjucer/JuceLibraryCode/modules/juce_events/juce_events.h b/extras/Introjucer/JuceLibraryCode/modules/juce_events/juce_events.h new file mode 100644 index 0000000000..d0b4133815 --- /dev/null +++ b/extras/Introjucer/JuceLibraryCode/modules/juce_events/juce_events.h @@ -0,0 +1,5 @@ +// This is an auto-generated file to redirect any included +// module headers to the correct external folder. + +#include "../../../../../modules/juce_events/juce_events.h" + diff --git a/extras/Introjucer/JuceLibraryCode/modules/juce_graphics/juce_graphics.h b/extras/Introjucer/JuceLibraryCode/modules/juce_graphics/juce_graphics.h new file mode 100644 index 0000000000..f287a18ee6 --- /dev/null +++ b/extras/Introjucer/JuceLibraryCode/modules/juce_graphics/juce_graphics.h @@ -0,0 +1,5 @@ +// This is an auto-generated file to redirect any included +// module headers to the correct external folder. + +#include "../../../../../modules/juce_graphics/juce_graphics.h" + diff --git a/extras/Introjucer/JuceLibraryCode/modules/juce_gui_basics/juce_gui_basics.h b/extras/Introjucer/JuceLibraryCode/modules/juce_gui_basics/juce_gui_basics.h new file mode 100644 index 0000000000..c678c1cfc9 --- /dev/null +++ b/extras/Introjucer/JuceLibraryCode/modules/juce_gui_basics/juce_gui_basics.h @@ -0,0 +1,5 @@ +// This is an auto-generated file to redirect any included +// module headers to the correct external folder. + +#include "../../../../../modules/juce_gui_basics/juce_gui_basics.h" + diff --git a/extras/Introjucer/JuceLibraryCode/modules/juce_gui_extra/juce_gui_extra.h b/extras/Introjucer/JuceLibraryCode/modules/juce_gui_extra/juce_gui_extra.h new file mode 100644 index 0000000000..7efee1d103 --- /dev/null +++ b/extras/Introjucer/JuceLibraryCode/modules/juce_gui_extra/juce_gui_extra.h @@ -0,0 +1,5 @@ +// This is an auto-generated file to redirect any included +// module headers to the correct external folder. + +#include "../../../../../modules/juce_gui_extra/juce_gui_extra.h" + diff --git a/extras/Introjucer/Source/Application/jucer_Application.h b/extras/Introjucer/Source/Application/jucer_Application.h index 93e8072482..1c131b606e 100644 --- a/extras/Introjucer/Source/Application/jucer_Application.h +++ b/extras/Introjucer/Source/Application/jucer_Application.h @@ -2,7 +2,7 @@ ============================================================================== This file is part of the JUCE library - "Jules' Utility Class Extensions" - Copyright 2004-10 by Raw Material Software Ltd. + Copyright 2004-11 by Raw Material Software Ltd. ------------------------------------------------------------------------------ @@ -23,13 +23,13 @@ ============================================================================== */ -#ifndef __JUCER_APPLICATION_H_6595C2A8__ -#define __JUCER_APPLICATION_H_6595C2A8__ +#ifndef __JUCER_APPLICATION_JUCEHEADER__ +#define __JUCER_APPLICATION_JUCEHEADER__ #include "../jucer_Headers.h" #include "jucer_MainWindow.h" #include "jucer_JuceUpdater.h" -#include "../Project/jucer_NewProjectWizard.h" +#include "jucer_CommandLine.h" //============================================================================== @@ -37,21 +37,22 @@ class JucerApplication : public JUCEApplication { public: //============================================================================== - JucerApplication() {} + JucerApplication() {} ~JucerApplication() {} //============================================================================== void initialise (const String& commandLine) { - /* Running a command-line of the form "Jucer --resave foobar.jucer" will try to load that - jucer file and re-export all of its projects. - */ - if (commandLine.startsWithIgnoreCase ("-resave ") || commandLine.startsWithIgnoreCase ("--resave ")) + if (commandLine.isNotEmpty()) { - Project::resaveJucerFile (File::getCurrentWorkingDirectory() - .getChildFile (commandLine.fromFirstOccurrenceOf (" ", false, false).unquoted())); - quit(); - return; + const int appReturnCode = performCommandLine (commandLine); + + if (appReturnCode != commandLineNotPerformed) + { + setApplicationReturnValue (appReturnCode); + quit(); + return; + } } commandManager = new ApplicationCommandManager(); @@ -75,31 +76,39 @@ public: openFile (projects.getReference(i)); } + makeSureUserHasSelectedModuleFolder(); + if (mainWindows.size() == 0) createNewMainWindow()->makeVisible(); - #if JUCE_MAC + #if JUCE_MAC MenuBarModel::setMacMainMenu (menuModel); - #endif + #endif } void shutdown() { - #if JUCE_MAC + #if JUCE_MAC MenuBarModel::setMacMainMenu (nullptr); - #endif + #endif menuModel = nullptr; StoredSettings::deleteInstance(); mainWindows.clear(); OpenDocumentManager::deleteInstance(); - deleteAndZero (commandManager); + commandManager = nullptr; } //============================================================================== void systemRequestedQuit() { + if (cancelAnyModalComponents()) + { + new AsyncQuitRetrier(); + return; + } + while (mainWindows.size() > 0) { if (! mainWindows[0]->closeCurrentProject()) @@ -116,10 +125,10 @@ public: jassert (mainWindows.contains (w)); mainWindows.removeObject (w); - #if ! JUCE_MAC + #if ! JUCE_MAC if (mainWindows.size() == 0) systemRequestedQuit(); - #endif + #endif updateRecentProjectList(); } @@ -137,11 +146,11 @@ public: bool moreThanOneInstanceAllowed() { - #ifndef JUCE_LINUX + #ifndef JUCE_LINUX return false; - #else + #else return true; //xxx should be false but doesn't work on linux.. - #endif + #endif } void anotherInstanceStarted (const String& commandLine) @@ -151,6 +160,11 @@ public: virtual void doExtraInitialisation() {} + static JucerApplication* getApp() + { + return dynamic_cast (JUCEApplication::getInstance()); + } + //============================================================================== class MainMenuModel : public MenuBarModel { @@ -162,11 +176,11 @@ public: const StringArray getMenuBarNames() { - const char* const names[] = { "File", "Edit", "View", "Window", "Update", 0 }; + const char* const names[] = { "File", "Edit", "View", "Window", "Tools", 0 }; return StringArray ((const char**) names); } - const PopupMenu getMenuForIndex (int topLevelMenuIndex, const String& menuName) + const PopupMenu getMenuForIndex (int topLevelMenuIndex, const String& /*menuName*/) { PopupMenu menu; @@ -253,15 +267,16 @@ public: menu.addSeparator(); menu.addCommandItem (commandManager, CommandIDs::closeAllDocuments); } - else if (topLevelMenuIndex == 4) // "Juce" menu + else if (topLevelMenuIndex == 4) // "Tools" menu { - menu.addCommandItem (commandManager, CommandIDs::showJuceVersion); + menu.addCommandItem (commandManager, CommandIDs::updateModules); + menu.addCommandItem (commandManager, CommandIDs::showUTF8Tool); } return menu; } - void menuItemSelected (int menuItemID, int topLevelMenuIndex) + void menuItemSelected (int menuItemID, int /*topLevelMenuIndex*/) { if (menuItemID >= 100 && menuItemID < 200) { @@ -277,14 +292,9 @@ public: MainWindow* w = getApp()->getOrCreateFrontmostWindow(); w->makeVisible(); w->getProjectContentComponent()->showDocument (doc); + getApp()->avoidSuperimposedWindows (w); } } - - private: - JucerApplication* getApp() const - { - return static_cast (JUCEApplication::getInstance()); - } }; //============================================================================== @@ -297,7 +307,8 @@ public: CommandIDs::showPrefs, CommandIDs::closeAllDocuments, CommandIDs::saveAll, - CommandIDs::showJuceVersion }; + CommandIDs::updateModules, + CommandIDs::showUTF8Tool }; commands.addArray (ids, numElementsInArray (ids)); } @@ -331,8 +342,12 @@ public: result.setActive (OpenDocumentManager::getInstance()->anyFilesNeedSaving()); break; - case CommandIDs::showJuceVersion: - result.setInfo ("Download the latest JUCE version", "Checks online for any Juce updates", CommandCategories::general, 0); + case CommandIDs::updateModules: + result.setInfo ("Download the latest JUCE modules", "Checks online for any JUCE modules updates and installs them", CommandCategories::general, 0); + break; + + case CommandIDs::showUTF8Tool: + result.setInfo ("UTF-8 String-Literal Helper", "Shows the UTF-8 string literal utility", CommandCategories::general, 0); break; default: @@ -350,7 +365,9 @@ public: case CommandIDs::showPrefs: showPrefsPanel(); break; case CommandIDs::saveAll: OpenDocumentManager::getInstance()->saveAll(); break; case CommandIDs::closeAllDocuments: closeAllDocuments (true); break; - case CommandIDs::showJuceVersion: JuceUpdater::show (mainWindows[0]); break; + case CommandIDs::showUTF8Tool: showUTF8ToolWindow(); break; + case CommandIDs::updateModules: runModuleUpdate (String::empty); break; + default: return JUCEApplication::perform (info); } @@ -365,17 +382,11 @@ public: void createNewProject() { - MainWindow* mw = createNewMainWindow(); - ScopedPointer newProj (NewProjectWizard::runNewProjectWizard (mw)); - - if (newProj != nullptr) + if (makeSureUserHasSelectedModuleFolder()) { - mw->setProject (newProj.release()); - mw->makeVisible(); - } - else - { - closeWindow (mw); + MainWindow* mw = getOrCreateEmptyWindow(); + mw->showNewProjectWizard(); + avoidSuperimposedWindows (mw); } } @@ -408,6 +419,7 @@ public: MainWindow* w = getOrCreateEmptyWindow(); w->setProject (newDoc.release()); w->makeVisible(); + avoidSuperimposedWindows (w); return true; } } @@ -417,6 +429,7 @@ public: const bool ok = w->openFile (file); w->makeVisible(); + avoidSuperimposedWindows (w); return ok; } @@ -425,18 +438,7 @@ public: bool closeAllDocuments (bool askUserToSave) { - for (int i = OpenDocumentManager::getInstance()->getNumOpenDocuments(); --i >= 0;) - { - OpenDocumentManager::Document* doc = OpenDocumentManager::getInstance()->getOpenDocument (i); - - for (int j = mainWindows.size(); --j >= 0;) - mainWindows.getUnchecked(j)->getProjectContentComponent()->hideDocument (doc); - - if (! OpenDocumentManager::getInstance()->closeDocument (i, askUserToSave)) - return false; - } - - return true; + return OpenDocumentManager::getInstance()->closeAll (askUserToSave); } void updateRecentProjectList() @@ -454,6 +456,35 @@ public: StoredSettings::getInstance()->setLastProjects (projects); } + bool makeSureUserHasSelectedModuleFolder() + { + if (! ModuleList::isLocalModulesFolderValid()) + { + if (! runModuleUpdate ("Please select a location to store your local set of JUCE modules,\n" + "and download the ones that you'd like to use!")) + { + AlertWindow::showMessageBox (AlertWindow::WarningIcon, + "Introjucer", + "Unless you create a local JUCE folder containing some modules, you'll be unable to save any projects correctly!\n\n" + "Use the option on the 'Tools' menu to set this up!"); + + return false; + } + } + + return true; + } + + bool runModuleUpdate (const String& message) + { + ModuleList list; + list.rescan (ModuleList::getDefaultModulesFolder (nullptr)); + JuceUpdater::show (list, mainWindows[0], message); + + ModuleList::setLocalModulesFolder (list.getModulesFolder()); + return ModuleList::isJuceOrModulesFolder (list.getModulesFolder()); + } + ScopedPointer menuModel; private: @@ -462,13 +493,9 @@ private: MainWindow* createNewMainWindow() { MainWindow* mw = new MainWindow(); - - for (int i = mainWindows.size(); --i >= 0;) - if (mw->getBounds() == mainWindows.getUnchecked(i)->getBounds()) - mw->setBounds (mw->getBounds().translated (20, 20)); - mainWindows.add (mw); mw->restoreWindowPosition(); + avoidSuperimposedWindows (mw); return mw; } @@ -501,7 +528,61 @@ private: return createNewMainWindow(); } + + void avoidSuperimposedWindows (MainWindow* const mw) + { + for (int i = mainWindows.size(); --i >= 0;) + { + MainWindow* const other = mainWindows.getUnchecked(i); + + const Rectangle b1 (mw->getBounds()); + const Rectangle b2 (other->getBounds()); + + if (mw != other + && std::abs (b1.getX() - b2.getX()) < 3 + && std::abs (b1.getY() - b2.getY()) < 3 + && std::abs (b1.getRight() - b2.getRight()) < 3 + && std::abs (b1.getBottom() - b2.getBottom()) < 3) + { + int dx = 40, dy = 30; + + if (b1.getCentreX() >= mw->getScreenBounds().getCentreX()) dx = -dx; + if (b1.getCentreY() >= mw->getScreenBounds().getCentreY()) dy = -dy; + + mw->setBounds (b1.translated (dx, dy)); + } + } + } + + //============================================================================== + static bool cancelAnyModalComponents() + { + const int numModal = ModalComponentManager::getInstance()->getNumModalComponents(); + + for (int i = numModal; --i >= 0;) + if (ModalComponentManager::getInstance()->getModalComponent(i) != nullptr) + ModalComponentManager::getInstance()->getModalComponent(i)->exitModalState (0); + + return numModal > 0; + } + + class AsyncQuitRetrier : public Timer + { + public: + AsyncQuitRetrier() { startTimer (500); } + + void timerCallback() + { + stopTimer(); + delete this; + + if (getApp() != nullptr) + getApp()->systemRequestedQuit(); + } + + JUCE_DECLARE_NON_COPYABLE (AsyncQuitRetrier); + }; }; -#endif // __JUCER_APPLICATION_H_6595C2A8__ +#endif // __JUCER_APPLICATION_JUCEHEADER__ diff --git a/extras/Introjucer/Source/Application/jucer_CommandIDs.h b/extras/Introjucer/Source/Application/jucer_CommandIDs.h index 47942af57c..a564d99f14 100644 --- a/extras/Introjucer/Source/Application/jucer_CommandIDs.h +++ b/extras/Introjucer/Source/Application/jucer_CommandIDs.h @@ -2,7 +2,7 @@ ============================================================================== This file is part of the JUCE library - "Jules' Utility Class Extensions" - Copyright 2004-10 by Raw Material Software Ltd. + Copyright 2004-11 by Raw Material Software Ltd. ------------------------------------------------------------------------------ @@ -40,7 +40,8 @@ namespace CommandIDs static const int openInIDE = 0x200072; static const int saveAndOpenInIDE = 0x200073; static const int showProjectSettings = 0x200074; - static const int showJuceVersion = 0x200075; + static const int updateModules = 0x200075; + static const int showUTF8Tool = 0x200076; static const int saveAll = 0x200080; static const int undo = 0x200090; diff --git a/extras/Introjucer/Source/Application/jucer_CommandLine.cpp b/extras/Introjucer/Source/Application/jucer_CommandLine.cpp new file mode 100644 index 0000000000..239eb68f5c --- /dev/null +++ b/extras/Introjucer/Source/Application/jucer_CommandLine.cpp @@ -0,0 +1,263 @@ +/* + ============================================================================== + + This file is part of the JUCE library - "Jules' Utility Class Extensions" + Copyright 2004-11 by Raw Material Software Ltd. + + ------------------------------------------------------------------------------ + + JUCE can be redistributed and/or modified under the terms of the GNU General + Public License (Version 2), as published by the Free Software Foundation. + A copy of the license is included in the JUCE distribution, or can be found + online at www.gnu.org/licenses. + + JUCE is distributed in the hope that it will be useful, but WITHOUT ANY + WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR + A PARTICULAR PURPOSE. See the GNU General Public License for more details. + + ------------------------------------------------------------------------------ + + To release a closed-source product which uses JUCE, commercial licenses are + available: visit www.rawmaterialsoftware.com/juce for more information. + + ============================================================================== +*/ + +#include "../Project/jucer_Project.h" +#include "../Project/jucer_Module.h" +#include "jucer_CommandLine.h" + + +//============================================================================== +namespace +{ + File getFile (const String& filename) + { + return File::getCurrentWorkingDirectory().getChildFile (filename.unquoted()); + } + + bool checkArgumentCount (const StringArray& tokens, int minNumArgs) + { + if (tokens.size() < minNumArgs) + { + std::cout << "Not enough arguments!" << std::endl; + return false; + } + + return true; + } + + //============================================================================== + /* Running a command-line of the form "introjucer --resave foobar.jucer" will try to load + that project and re-export all of its targets. + */ + int resaveProject (const File& file) + { + if (! file.exists()) + { + std::cout << "The file " << file.getFullPathName() << " doesn't exist!" << std::endl; + return 1; + } + + if (! file.hasFileExtension (Project::projectFileExtension)) + { + std::cout << file.getFullPathName() << " isn't a valid jucer project file!" << std::endl; + return 1; + } + + Project newDoc (file); + + if (! newDoc.loadFrom (file, true)) + { + std::cout << "Failed to load the project file: " << file.getFullPathName() << std::endl; + return 1; + } + + std::cout << "The Introjucer - Re-saving file: " << file.getFullPathName() << std::endl; + String error (newDoc.saveDocument (file)); + + if (error.isNotEmpty()) + { + std::cout << "Error when writing project: " << error << std::endl; + return 1; + } + + return 0; + } + + //============================================================================== + String getModulePackageName (const LibraryModule& module) + { + return module.getID() + ".jucemodule"; + } + + int zipModule (const File& targetFolder, const File& moduleFolder) + { + jassert (targetFolder.isDirectory()); + + const File moduleFolderParent (moduleFolder.getParentDirectory()); + LibraryModule module (moduleFolder.getChildFile (LibraryModule::getInfoFileName())); + + if (! module.isValid()) + { + std::cout << moduleFolder.getFullPathName() << " is not a valid module folder!" << std::endl; + return 1; + } + + const File targetFile (targetFolder.getChildFile (getModulePackageName (module))); + + ZipFile::Builder zip; + + { + DirectoryIterator i (moduleFolder, true, "*", File::findFiles); + + while (i.next()) + if (! i.getFile().isHidden()) + zip.addFile (i.getFile(), 9, i.getFile().getRelativePathFrom (moduleFolderParent)); + } + + std::cout << "Writing: " << targetFile.getFullPathName() << std::endl; + + TemporaryFile temp (targetFile); + ScopedPointer out (temp.getFile().createOutputStream()); + + bool ok = out != nullptr && zip.writeToStream (*out); + out = nullptr; + ok = ok && temp.overwriteTargetFileWithTemporary(); + + if (! ok) + { + std::cout << "Failed to write to the target file: " << targetFile.getFullPathName() << std::endl; + return 1; + } + + return 0; + } + + int buildModules (const StringArray& tokens, const bool buildAllWithIndex) + { + if (! checkArgumentCount (tokens, 3)) + return 1; + + const File targetFolder (getFile (tokens[1])); + + if (! targetFolder.isDirectory()) + { + std::cout << "The first argument must be the directory to put the result." << std::endl; + return 1; + } + + if (buildAllWithIndex) + { + const File folderToSearch (getFile (tokens[2])); + DirectoryIterator i (folderToSearch, false, "*", File::findDirectories); + var infoList; + + while (i.next()) + { + LibraryModule module (i.getFile().getChildFile (LibraryModule::getInfoFileName())); + + if (module.isValid()) + { + const int result = zipModule (targetFolder, i.getFile()); + + if (result != 0) + return result; + + var moduleInfo (new DynamicObject()); + moduleInfo.getDynamicObject()->setProperty ("file", getModulePackageName (module)); + moduleInfo.getDynamicObject()->setProperty ("info", module.moduleInfo); + infoList.append (moduleInfo); + } + } + + const File indexFile (targetFolder.getChildFile ("modulelist")); + std::cout << "Writing: " << indexFile.getFullPathName() << std::endl; + indexFile.replaceWithText (JSON::toString (infoList), false, false); + } + else + { + for (int i = 2; i < tokens.size(); ++i) + { + const int result = zipModule (targetFolder, getFile (tokens[i])); + + if (result != 0) + return result; + } + } + + return 0; + } + + int listModules() + { + std::cout << "Downloading list of available modules..." << std::endl; + ModuleList list; + list.loadFromWebsite(); + + for (int i = 0; i < list.modules.size(); ++i) + { + ModuleList::Module* m = list.modules.getUnchecked(i); + + std::cout << m->uid << ": " << m->version << std::endl; + } + + return 0; + } + + int showStatus (const StringArray& tokens) + { + if (! checkArgumentCount (tokens, 2)) + return 1; + + const File projectFile (getFile (tokens[1])); + + Project proj (projectFile); + + if (proj.loadDocument (projectFile).isNotEmpty()) + { + std::cout << "Failed to load project: " << projectFile.getFullPathName() << std::endl; + return 1; + } + + std::cout << "Project file: " << projectFile.getFullPathName() << std::endl + << "Name: " << proj.getProjectName().toString() << std::endl + << "UID: " << proj.getProjectUID() << std::endl; + + const int numModules = proj.getNumModules(); + if (numModules > 0) + { + std::cout << "Modules:" << std::endl; + + for (int i = 0; i < numModules; ++i) + std::cout << " " << proj.getModuleID (i) << std::endl; + } + + return 0; + } +} + +//============================================================================== +int performCommandLine (const String& commandLine) +{ + StringArray tokens; + tokens.addTokens (commandLine, true); + tokens.trim(); + + if (tokens[0] == "-resave" || tokens[0] == "--resave" || tokens[0] == "resave") + return resaveProject (getFile (tokens[1])); + + if (tokens[0] == "buildmodule") + return buildModules (tokens, false); + + if (tokens[0] == "buildallmodules") + return buildModules (tokens, true); + + if (tokens[0] == "listmodules") + return listModules(); + + if (tokens[0] == "status") + return showStatus (tokens); + + return commandLineNotPerformed; +} diff --git a/extras/browser plugins/wrapper/juce_NPAPI_GlueCode.mm b/extras/Introjucer/Source/Application/jucer_CommandLine.h similarity index 77% rename from extras/browser plugins/wrapper/juce_NPAPI_GlueCode.mm rename to extras/Introjucer/Source/Application/jucer_CommandLine.h index 028bf46325..5d19abf745 100644 --- a/extras/browser plugins/wrapper/juce_NPAPI_GlueCode.mm +++ b/extras/Introjucer/Source/Application/jucer_CommandLine.h @@ -23,10 +23,13 @@ ============================================================================== */ -//============================================================================== -/** The only reason this file exists is to wrap the .cpp file inside a .mm file to - make the compiler treat it as obj-C. -*/ -#include -#define JUCE_NPAPI_WRAPPED_IN_MM 1 -#include "juce_NPAPI_GlueCode.cpp" +#ifndef __JUCER_COMMANDLINE_JUCEHEADER__ +#define __JUCER_COMMANDLINE_JUCEHEADER__ + + +int performCommandLine (const String& commandLine); + +enum { commandLineNotPerformed = 0x72346231 }; + + +#endif // __JUCER_COMMANDLINE_JUCEHEADER__ diff --git a/extras/Introjucer/Source/Application/jucer_CommonHeaders.h b/extras/Introjucer/Source/Application/jucer_CommonHeaders.h index 33e002bdbb..8cc17acf96 100644 --- a/extras/Introjucer/Source/Application/jucer_CommonHeaders.h +++ b/extras/Introjucer/Source/Application/jucer_CommonHeaders.h @@ -2,7 +2,7 @@ ============================================================================== This file is part of the JUCE library - "Jules' Utility Class Extensions" - Copyright 2004-10 by Raw Material Software Ltd. + Copyright 2004-11 by Raw Material Software Ltd. ------------------------------------------------------------------------------ @@ -23,8 +23,8 @@ ============================================================================== */ -#ifndef __JUCER_COMMONINCLUDES_H__ -#define __JUCER_COMMONINCLUDES_H__ +#ifndef __JUCER_COMMONHEADERS_JUCEHEADER__ +#define __JUCER_COMMONHEADERS_JUCEHEADER__ #include "../Utility/jucer_StoredSettings.h" @@ -37,7 +37,7 @@ #include "jucer_CommandIDs.h" //============================================================================== -extern ApplicationCommandManager* commandManager; +extern ScopedPointer commandManager; //============================================================================== const char* const projectItemDragType = "Project Items"; @@ -48,4 +48,4 @@ const char* const sourceFileExtensions = "cpp;mm;m;c;cc;cxx"; const char* const headerFileExtensions = "h;hpp;hxx"; const char* const sourceOrHeaderFileExtensions = "cpp;mm;m;c;cc;cxx;h;hpp;hxx"; -#endif \ No newline at end of file +#endif // __JUCER_COMMONHEADERS_JUCEHEADER__ diff --git a/extras/Introjucer/Source/Application/jucer_DocumentEditorComponent.cpp b/extras/Introjucer/Source/Application/jucer_DocumentEditorComponent.cpp index 2556144c47..21631c6bb1 100644 --- a/extras/Introjucer/Source/Application/jucer_DocumentEditorComponent.cpp +++ b/extras/Introjucer/Source/Application/jucer_DocumentEditorComponent.cpp @@ -2,7 +2,7 @@ ============================================================================== This file is part of the JUCE library - "Jules' Utility Class Extensions" - Copyright 2004-10 by Raw Material Software Ltd. + Copyright 2004-11 by Raw Material Software Ltd. ------------------------------------------------------------------------------ @@ -91,6 +91,7 @@ void DocumentEditorComponent::getCommandInfo (const CommandID commandID, Applica result.setInfo ("Save" + name + " As...", "Saves the current document to a different filename", CommandCategories::general, 0); + result.setActive (document != nullptr && document->canSaveAs()); result.defaultKeypresses.add (KeyPress ('s', ModifierKeys::commandModifier | ModifierKeys::shiftModifier, 0)); break; @@ -98,7 +99,11 @@ void DocumentEditorComponent::getCommandInfo (const CommandID commandID, Applica result.setInfo ("Close" + name, "Closes the current document", CommandCategories::general, 0); + #if JUCE_MAC + result.defaultKeypresses.add (KeyPress ('w', ModifierKeys::commandModifier | ModifierKeys::ctrlModifier, 0)); + #else result.defaultKeypresses.add (KeyPress ('w', ModifierKeys::commandModifier | ModifierKeys::shiftModifier, 0)); + #endif break; default: @@ -115,8 +120,7 @@ bool DocumentEditorComponent::perform (const InvocationInfo& info) return true; case CommandIDs::saveDocumentAs: - jassertfalse //xxxx - //document.save(); + document->saveAs(); return true; case CommandIDs::closeDocument: diff --git a/extras/Introjucer/Source/Application/jucer_DocumentEditorComponent.h b/extras/Introjucer/Source/Application/jucer_DocumentEditorComponent.h index bfbd036287..b396c663e9 100644 --- a/extras/Introjucer/Source/Application/jucer_DocumentEditorComponent.h +++ b/extras/Introjucer/Source/Application/jucer_DocumentEditorComponent.h @@ -2,7 +2,7 @@ ============================================================================== This file is part of the JUCE library - "Jules' Utility Class Extensions" - Copyright 2004-10 by Raw Material Software Ltd. + Copyright 2004-11 by Raw Material Software Ltd. ------------------------------------------------------------------------------ diff --git a/extras/Introjucer/Source/Application/jucer_FilePreviewComponent.cpp b/extras/Introjucer/Source/Application/jucer_FilePreviewComponent.cpp index 847d36db8e..b630217eec 100644 --- a/extras/Introjucer/Source/Application/jucer_FilePreviewComponent.cpp +++ b/extras/Introjucer/Source/Application/jucer_FilePreviewComponent.cpp @@ -2,7 +2,7 @@ ============================================================================== This file is part of the JUCE library - "Jules' Utility Class Extensions" - Copyright 2004-10 by Raw Material Software Ltd. + Copyright 2004-11 by Raw Material Software Ltd. ------------------------------------------------------------------------------ diff --git a/extras/Introjucer/Source/Application/jucer_FilePreviewComponent.h b/extras/Introjucer/Source/Application/jucer_FilePreviewComponent.h index d15dc59af3..16c1ef805f 100644 --- a/extras/Introjucer/Source/Application/jucer_FilePreviewComponent.h +++ b/extras/Introjucer/Source/Application/jucer_FilePreviewComponent.h @@ -2,7 +2,7 @@ ============================================================================== This file is part of the JUCE library - "Jules' Utility Class Extensions" - Copyright 2004-10 by Raw Material Software Ltd. + Copyright 2004-11 by Raw Material Software Ltd. ------------------------------------------------------------------------------ @@ -23,8 +23,8 @@ ============================================================================== */ -#ifndef __JUCER_ITEMPREVIEWCOMPONENT_JUCEHEADER__ -#define __JUCER_ITEMPREVIEWCOMPONENT_JUCEHEADER__ +#ifndef __JUCER_FILEPREVIEWCOMPONENT_JUCEHEADER__ +#define __JUCER_FILEPREVIEWCOMPONENT_JUCEHEADER__ //============================================================================== @@ -49,4 +49,4 @@ private: }; -#endif // __JUCER_ITEMPREVIEWCOMPONENT_JUCEHEADER__ +#endif // __JUCER_FILEPREVIEWCOMPONENT_JUCEHEADER__ diff --git a/extras/Introjucer/Source/Application/jucer_JuceUpdater.cpp b/extras/Introjucer/Source/Application/jucer_JuceUpdater.cpp index 57b36e194c..e406f591dd 100644 --- a/extras/Introjucer/Source/Application/jucer_JuceUpdater.cpp +++ b/extras/Introjucer/Source/Application/jucer_JuceUpdater.cpp @@ -2,7 +2,7 @@ ============================================================================== This file is part of the JUCE library - "Jules' Utility Class Extensions" - Copyright 2004-10 by Raw Material Software Ltd. + Copyright 2004-11 by Raw Material Software Ltd. ------------------------------------------------------------------------------ @@ -25,30 +25,48 @@ #include "../jucer_Headers.h" #include "jucer_JuceUpdater.h" +#include "../Project/jucer_Module.h" //============================================================================== -JuceUpdater::JuceUpdater() - : filenameComp ("Juce Folder", StoredSettings::getInstance()->getLastKnownJuceFolder(), +JuceUpdater::JuceUpdater (ModuleList& moduleList_, const String& message) + : moduleList (moduleList_), + messageLabel (String::empty, message), + filenameComp ("Juce Folder", ModuleList::getLocalModulesFolder (nullptr), true, true, false, "*", String::empty, "Select your Juce folder"), - checkNowButton ("Check Online for Available Updates...", - "Contacts the website to see if this version is up-to-date") + checkNowButton ("Check for available updates on the JUCE website...", + "Contacts the website to see if new modules are available"), + installButton ("Download and install selected modules..."), + selectAllButton ("Select/Deselect All") { + messageLabel.setJustificationType (Justification::centred); + addAndMakeVisible (&messageLabel); + addAndMakeVisible (&label); + addAndMakeVisible (¤tVersionLabel); addAndMakeVisible (&filenameComp); addAndMakeVisible (&checkNowButton); - addAndMakeVisible (¤tVersionLabel); + addAndMakeVisible (&installButton); + addAndMakeVisible (&selectAllButton); checkNowButton.addListener (this); + installButton.addListener (this); + selectAllButton.addListener (this); filenameComp.addListener (this); currentVersionLabel.setFont (Font (14.0f, Font::italic)); label.setFont (Font (12.0f)); - label.setText ("Destination folder:", false); + label.setText ("Local modules folder:", false); addAndMakeVisible (&availableVersionsList); availableVersionsList.setModel (this); - setSize (600, 300); + updateInstallButtonStatus(); + versionsToDownload = ValueTree ("modules"); + versionsToDownload.addListener (this); + + setSize (600, 500); + + checkNow(); } JuceUpdater::~JuceUpdater() @@ -57,22 +75,52 @@ JuceUpdater::~JuceUpdater() filenameComp.removeListener (this); } -void JuceUpdater::show (Component* mainWindow) +//============================================================================== +class UpdateDialogWindow : public DialogWindow { - JuceUpdater updater; - DialogWindow::showModalDialog ("Juce Update...", &updater, mainWindow, - Colours::lightgrey, - true, false, false); +public: + UpdateDialogWindow (JuceUpdater* updater, Component* componentToCentreAround) + : DialogWindow ("JUCE Module Updater", + Colours::lightgrey, true, true) + { + setUsingNativeTitleBar (true); + setContentOwned (updater, true); + centreAroundComponent (componentToCentreAround, getWidth(), getHeight()); + setResizable (true, true); + } + + void closeButtonPressed() + { + setVisible (false); + } + +private: + JUCE_DECLARE_NON_COPYABLE (UpdateDialogWindow); +}; + +void JuceUpdater::show (ModuleList& moduleList, Component* mainWindow, const String& message) +{ + UpdateDialogWindow w (new JuceUpdater (moduleList, message), mainWindow); + w.runModalLoop(); } void JuceUpdater::resized() { - filenameComp.setBounds (20, 40, getWidth() - 40, 22); + messageLabel.setBounds (20, 10, getWidth() - 40, messageLabel.getText().isEmpty() ? 0 : 30); + + filenameComp.setBounds (20, messageLabel.getBottom() + 20, getWidth() - 40, 22); label.setBounds (filenameComp.getX(), filenameComp.getY() - 18, filenameComp.getWidth(), 18); currentVersionLabel.setBounds (filenameComp.getX(), filenameComp.getBottom(), filenameComp.getWidth(), 25); - checkNowButton.changeWidthToFitText (20); - checkNowButton.setCentrePosition (getWidth() / 2, filenameComp.getBottom() + 40); - availableVersionsList.setBounds (filenameComp.getX(), checkNowButton.getBottom() + 20, filenameComp.getWidth(), getHeight() - (checkNowButton.getBottom() + 20)); + checkNowButton.changeWidthToFitText (22); + checkNowButton.setCentrePosition (getWidth() / 2, filenameComp.getBottom() + 20); + availableVersionsList.setBounds (filenameComp.getX(), checkNowButton.getBottom() + 20, + filenameComp.getWidth(), + getHeight() - 30 - (checkNowButton.getBottom() + 20)); + installButton.changeWidthToFitText (22); + installButton.setTopRightPosition (availableVersionsList.getRight(), getHeight() - 28); + selectAllButton.setBounds (availableVersionsList.getX(), + availableVersionsList.getBottom() + 4, + installButton.getX() - availableVersionsList.getX() - 20, 22); } void JuceUpdater::paint (Graphics& g) @@ -80,247 +128,134 @@ void JuceUpdater::paint (Graphics& g) g.fillAll (Colours::white); } -String findVersionNum (const String& file, const String& token) +void JuceUpdater::buttonClicked (Button* b) { - return file.fromFirstOccurrenceOf (token, false, false) - .upToFirstOccurrenceOf ("\n", false, false) - .trim(); + if (b == &installButton) + install(); + else if (b == &selectAllButton) + selectAll(); + else + checkNow(); } -String JuceUpdater::getCurrentVersion() +void JuceUpdater::refresh() { - const String header (filenameComp.getCurrentFile() - .getChildFile ("src/core/juce_StandardHeader.h").loadFileAsString()); - - const String v1 (findVersionNum (header, "JUCE_MAJOR_VERSION")); - const String v2 (findVersionNum (header, "JUCE_MINOR_VERSION")); - const String v3 (findVersionNum (header, "JUCE_BUILDNUMBER")); - - if ((v1 + v2 + v3).isEmpty()) - return String::empty; - - return v1 + "." + v2 + "." + v3; -} - -XmlElement* JuceUpdater::downloadVersionList() -{ - return URL ("http://www.rawmaterialsoftware.com/juce/downloads/juce_versions.php").readEntireXmlStream(); -} - -void JuceUpdater::updateVersions (const XmlElement& xml) -{ - availableVersions.clear(); - - forEachXmlChildElementWithTagName (xml, v, "VERSION") - { - VersionInfo* vi = new VersionInfo(); - vi->url = URL (v->getStringAttribute ("url")); - vi->desc = v->getStringAttribute ("desc"); - vi->version = v->getStringAttribute ("version"); - vi->date = v->getStringAttribute ("date"); - availableVersions.add (vi); - } - availableVersionsList.updateContent(); + availableVersionsList.repaint(); } -void JuceUpdater::buttonClicked (Button*) -{ - ScopedPointer xml (downloadVersionList()); - - if (xml == nullptr || xml->hasTagName ("html")) - { - AlertWindow::showMessageBox (AlertWindow::WarningIcon, "Connection Problems...", - "Couldn't connect to the Raw Material Software website!"); - - return; - } - - if (! xml->hasTagName ("JUCEVERSIONS")) - { - AlertWindow::showMessageBox (AlertWindow::WarningIcon, "Update Problems...", - "This version of the Jucer may be too old to receive automatic updates!\n\n" - "Please visit www.rawmaterialsoftware.com and get the latest version manually!"); - return; - } - - const String currentVersion (getCurrentVersion()); - - OwnedArray versions; - updateVersions (*xml); -} - -//============================================================================== -class NewVersionDownloader : public ThreadWithProgressWindow +class WebsiteContacterThread : public Thread, + private AsyncUpdater { public: - NewVersionDownloader (const String& title, const URL& url_, const File& target_) - : ThreadWithProgressWindow (title, true, true), - url (url_), target (target_) + WebsiteContacterThread (JuceUpdater& owner_, const ModuleList& latestList) + : Thread ("Module updater"), + owner (owner_), + downloaded (latestList) { + startThread(); + } + + ~WebsiteContacterThread() + { + stopThread (10000); } void run() { - setStatusMessage ("Contacting website..."); - - ScopedPointer input (url.createInputStream (false)); - - if (input == nullptr) - { - error = "Couldn't connect to the website..."; - return; - } - - if (! target.deleteFile()) - { - error = "Couldn't delete the destination file..."; - return; - } - - ScopedPointer output (target.createOutputStream (32768)); - - if (output == nullptr) - { - error = "Couldn't write to the destination file..."; - return; - } - - setStatusMessage ("Downloading..."); - - int totalBytes = (int) input->getTotalLength(); - int bytesSoFar = 0; - - while (! (input->isExhausted() || threadShouldExit())) - { - HeapBlock buffer (8192); - const int num = input->read (buffer, 8192); - - if (num == 0) - break; - - output->write (buffer, num); - bytesSoFar += num; - - setProgress (totalBytes > 0 ? bytesSoFar / (double) totalBytes : -1.0); - } + if (downloaded.loadFromWebsite()) + triggerAsyncUpdate(); + else + AlertWindow::showMessageBox (AlertWindow::InfoIcon, + "Module Update", + "Couldn't connect to the JUCE webserver!"); } - String error; + void handleAsyncUpdate() + { + owner.backgroundUpdateComplete (downloaded); + } private: - URL url; - File target; + JuceUpdater& owner; + ModuleList downloaded; }; -//============================================================================== -class Unzipper : public ThreadWithProgressWindow +void JuceUpdater::checkNow() { -public: - Unzipper (ZipFile& zipFile_, const File& targetDir_) - : ThreadWithProgressWindow ("Unzipping...", true, true), - worked (true), zipFile (zipFile_), targetDir (targetDir_) - { - } + websiteContacterThread = nullptr; + websiteContacterThread = new WebsiteContacterThread (*this, latestList); +} - void run() - { - for (int i = 0; i < zipFile.getNumEntries(); ++i) - { - if (threadShouldExit()) - break; - - const ZipFile::ZipEntry* e = zipFile.getEntry (i); - setStatusMessage ("Unzipping " + e->filename + "..."); - setProgress (i / (double) zipFile.getNumEntries()); - - worked = zipFile.uncompressEntry (i, targetDir, true) && worked; - } - } - - bool worked; - -private: - ZipFile& zipFile; - File targetDir; -}; - -//============================================================================== -void JuceUpdater::applyVersion (VersionInfo* version) +void JuceUpdater::backgroundUpdateComplete (const ModuleList& newList) { - File destDir (filenameComp.getCurrentFile()); + latestList = newList; + websiteContacterThread = nullptr; - const bool destDirExisted = destDir.isDirectory(); + if (latestList == moduleList) + AlertWindow::showMessageBox (AlertWindow::InfoIcon, + "Module Update", + "No new modules are available"); + refresh(); +} - if (destDirExisted && destDir.getNumberOfChildFiles (File::findFilesAndDirectories, "*") > 0) - { - int r = AlertWindow::showYesNoCancelBox (AlertWindow::WarningIcon, "Folder already exists", - "The folder " + destDir.getFullPathName() + "\nalready contains some files...\n\n" - "Do you want to delete everything in the folder and replace it entirely, or just merge the new files into the existing folder?", - "Delete and replace entire folder", - "Add and overwrite existing files", - "Cancel"); +int JuceUpdater::getNumCheckedModules() const +{ + int numChecked = 0; - if (r == 0) - return; + for (int i = latestList.modules.size(); --i >= 0;) + if (versionsToDownload [latestList.modules.getUnchecked(i)->uid]) + ++numChecked; - if (r == 1) - { - if (! destDir.deleteRecursively()) - { - AlertWindow::showMessageBox (AlertWindow::WarningIcon, "Problems...", - "Couldn't delete the existing folder!"); - return; - } - } - } + return numChecked; +} - if (! (destDir.isDirectory() || destDir.createDirectory())) - { - AlertWindow::showMessageBox (AlertWindow::WarningIcon, "Problems...", - "Couldn't create that target folder.."); - return; - } +bool JuceUpdater::isLatestVersion (const String& moduleID) const +{ + const ModuleList::Module* m1 = moduleList.findModuleInfo (moduleID); + const ModuleList::Module* m2 = latestList.findModuleInfo (moduleID); - File zipFile (destDir.getNonexistentChildFile ("juce_download", ".tar.gz", false)); + return m1 != nullptr && m2 != nullptr && m1->version == m2->version; +} - bool worked = false; - - { - NewVersionDownloader downloader ("Downloading Version " + version->version + "...", - version->url, zipFile); - worked = downloader.runThread(); - } - - if (worked) - { - ZipFile zip (zipFile); - Unzipper unzipper (zip, destDir); - worked = unzipper.runThread() && unzipper.worked; - } - - zipFile.deleteFile(); - - if ((! destDirExisted) && (destDir.getNumberOfChildFiles (File::findFilesAndDirectories, "*") == 0 || ! worked)) - destDir.deleteRecursively(); - - filenameComponentChanged (&filenameComp); +void JuceUpdater::updateInstallButtonStatus() +{ + const int numChecked = getNumCheckedModules(); + installButton.setEnabled (numChecked > 0); + selectAllButton.setToggleState (numChecked > latestList.modules.size() / 2, false); } void JuceUpdater::filenameComponentChanged (FilenameComponent*) { - const String version (getCurrentVersion()); + moduleList.rescan (filenameComp.getCurrentFile()); + filenameComp.setCurrentFile (moduleList.getModulesFolder(), true, false); - if (version.isEmpty()) + if (! ModuleList::isModulesFolder (moduleList.getModulesFolder())) currentVersionLabel.setText ("(Not a Juce folder)", false); else - currentVersionLabel.setText ("(Current version in this folder: " + version + ")", false); + currentVersionLabel.setText (String::empty, false); + + refresh(); +} + +void JuceUpdater::selectAll() +{ + bool enable = getNumCheckedModules() < latestList.modules.size() / 2; + + versionsToDownload.removeAllProperties (nullptr); + + if (enable) + { + for (int i = latestList.modules.size(); --i >= 0;) + if (! isLatestVersion (latestList.modules.getUnchecked(i)->uid)) + versionsToDownload.setProperty (latestList.modules.getUnchecked(i)->uid, true, nullptr); + } } //============================================================================== int JuceUpdater::getNumRows() { - return availableVersions.size(); + return latestList.modules.size(); } void JuceUpdater::paintListBoxItem (int rowNumber, Graphics& g, int width, int height, bool rowIsSelected) @@ -331,74 +266,192 @@ void JuceUpdater::paintListBoxItem (int rowNumber, Graphics& g, int width, int h Component* JuceUpdater::refreshComponentForRow (int rowNumber, bool isRowSelected, Component* existingComponentToUpdate) { - class UpdateListComponent : public Component, - public ButtonListener + class UpdateListComponent : public Component { public: UpdateListComponent (JuceUpdater& updater_) - : updater (updater_), - version (nullptr), - applyButton ("Install this version...") + : updater (updater_) { - addAndMakeVisible (&applyButton); - applyButton.addListener (this); + addChildComponent (&toggle); + toggle.setBounds ("2, 2, parent.height - 2, parent.height - 2"); + toggle.setWantsKeyboardFocus (false); setInterceptsMouseClicks (false, true); } - ~UpdateListComponent() + void setModule (const ModuleList::Module* newModule, + const ModuleList::Module* existingModule, + const Value& value) { - applyButton.removeListener (this); - } - - void setVersion (VersionInfo* v) - { - if (version != v) + if (newModule != nullptr) { - version = v; - repaint(); - resized(); + toggle.getToggleStateValue().referTo (value); + toggle.setVisible (true); + toggle.setEnabled (true); + + name = newModule->uid; + status = String::empty; + + if (existingModule == nullptr) + { + status << " (not currently installed)"; + } + else if (existingModule->version != newModule->version) + { + status << " installed: " << existingModule->version + << ", available: " << newModule->version; + } + else + { + status << " (latest version already installed: " << existingModule->version << ")"; + toggle.setEnabled (false); + } + } + else + { + name = status = String::empty; + toggle.setVisible (false); } } void paint (Graphics& g) { - if (version != nullptr) - { - g.setColour (Colours::green.withAlpha (0.12f)); + g.setColour (Colours::green.withAlpha (0.12f)); - g.fillRect (0, 1, getWidth(), getHeight() - 2); - g.setColour (Colours::black); - g.setFont (getHeight() * 0.7f); + g.fillRect (0, 1, getWidth(), getHeight() - 2); + g.setColour (Colours::black); + g.setFont (getHeight() * 0.7f); - String s; - s << "Version " << version->version << " - " << version->desc << " - " << version->date; + g.drawText (name, toggle.getRight() + 4, 0, getWidth() / 2 - toggle.getRight() - 4, getHeight(), + Justification::centredLeft, true); - g.drawText (s, 4, 0, applyButton.getX() - 4, getHeight(), Justification::centredLeft, true); - } - } - - void resized() - { - applyButton.changeWidthToFitText (getHeight() - 4); - applyButton.setTopRightPosition (getWidth(), 2); - applyButton.setVisible (version != nullptr); - } - - void buttonClicked (Button*) - { - updater.applyVersion (version); + g.drawText (status, getWidth() / 2, 0, getWidth() / 2, getHeight(), + Justification::centredLeft, true); } private: JuceUpdater& updater; - VersionInfo* version; - TextButton applyButton; + ToggleButton toggle; + String name, status; }; UpdateListComponent* c = dynamic_cast (existingComponentToUpdate); if (c == nullptr) c = new UpdateListComponent (*this); - c->setVersion (availableVersions [rowNumber]); + ModuleList::Module* m = latestList.modules [rowNumber]; + + if (m != nullptr) + c->setModule (m, + moduleList.findModuleInfo (m->uid), + versionsToDownload.getPropertyAsValue (m->uid, nullptr)); + else + c->setModule (nullptr, nullptr, Value()); + return c; } + +//============================================================================== +class InstallThread : public ThreadWithProgressWindow +{ +public: + InstallThread (const ModuleList& targetList_, + const ModuleList& list_, const StringArray& itemsToInstall_) + : ThreadWithProgressWindow ("Installing New Modules", true, true), + result (Result::ok()), + targetList (targetList_), + list (list_), + itemsToInstall (itemsToInstall_) + { + } + + void run() + { + for (int i = 0; i < itemsToInstall.size(); ++i) + { + const ModuleList::Module* m = list.findModuleInfo (itemsToInstall[i]); + + jassert (m != nullptr); + if (m != nullptr) + { + setProgress (i / (double) itemsToInstall.size()); + + MemoryBlock downloaded; + result = download (*m, downloaded); + + if (result.failed()) + break; + + if (threadShouldExit()) + break; + + result = unzip (*m, downloaded); + + if (result.failed()) + break; + } + + if (threadShouldExit()) + break; + } + } + + Result download (const ModuleList::Module& m, MemoryBlock& dest) + { + setStatusMessage ("Downloading " + m.uid + "..."); + + if (m.url.readEntireBinaryStream (dest, false)) + return Result::ok(); + + return Result::fail ("Failed to download from: " + m.url.toString (false)); + } + + Result unzip (const ModuleList::Module& m, const MemoryBlock& data) + { + setStatusMessage ("Installing " + m.uid + "..."); + + MemoryInputStream input (data, false); + ZipFile zip (input); + + if (zip.getNumEntries() == 0) + return Result::fail ("The downloaded file wasn't a valid module file!"); + + return zip.uncompressTo (targetList.getModulesFolder(), true); + } + + Result result; + +private: + ModuleList targetList, list; + StringArray itemsToInstall; +}; + +void JuceUpdater::install() +{ + if (! moduleList.getModulesFolder().createDirectory()) + { + AlertWindow::showMessageBox (AlertWindow::WarningIcon, + "Module Update", + "Couldn't create the target folder!"); + return; + } + + StringArray itemsWanted; + + for (int i = latestList.modules.size(); --i >= 0;) + if (versionsToDownload [latestList.modules.getUnchecked(i)->uid]) + itemsWanted.add (latestList.modules.getUnchecked(i)->uid); + + { + InstallThread thread (moduleList, latestList, itemsWanted); + thread.runThread(); + } + + moduleList.rescan(); + refresh(); +} + +void JuceUpdater::valueTreePropertyChanged (ValueTree&, const Identifier&) { updateInstallButtonStatus(); } +void JuceUpdater::valueTreeChildAdded (ValueTree&, ValueTree&) {} +void JuceUpdater::valueTreeChildRemoved (ValueTree&, ValueTree&) {} +void JuceUpdater::valueTreeChildOrderChanged (ValueTree&) {} +void JuceUpdater::valueTreeParentChanged (ValueTree&) {} diff --git a/extras/Introjucer/Source/Application/jucer_JuceUpdater.h b/extras/Introjucer/Source/Application/jucer_JuceUpdater.h index b57083cebb..e082edbe7d 100644 --- a/extras/Introjucer/Source/Application/jucer_JuceUpdater.h +++ b/extras/Introjucer/Source/Application/jucer_JuceUpdater.h @@ -2,7 +2,7 @@ ============================================================================== This file is part of the JUCE library - "Jules' Utility Class Extensions" - Copyright 2004-10 by Raw Material Software Ltd. + Copyright 2004-11 by Raw Material Software Ltd. ------------------------------------------------------------------------------ @@ -23,21 +23,24 @@ ============================================================================== */ -#ifndef __JUCER_JUCEUPDATER_H_81537815__ -#define __JUCER_JUCEUPDATER_H_81537815__ +#ifndef __JUCER_JUCEUPDATER_JUCEHEADER__ +#define __JUCER_JUCEUPDATER_JUCEHEADER__ + +#include "../Project/jucer_Module.h" //============================================================================== class JuceUpdater : public Component, - public ButtonListener, - public FilenameComponentListener, - public ListBoxModel + private ButtonListener, + private FilenameComponentListener, + private ListBoxModel, + private ValueTree::Listener { public: - JuceUpdater(); + JuceUpdater (ModuleList& moduleList, const String& message); ~JuceUpdater(); - static void show (Component* mainWindow); + static void show (ModuleList& moduleList, Component* mainWindow, const String& message); //============================================================================== void resized(); @@ -49,29 +52,36 @@ public: void paintListBoxItem (int rowNumber, Graphics& g, int width, int height, bool rowIsSelected); Component* refreshComponentForRow (int rowNumber, bool isRowSelected, Component* existingComponentToUpdate); + void backgroundUpdateComplete (const ModuleList& newList); + private: - Label label, currentVersionLabel; + ModuleList& moduleList; + ModuleList latestList; + + Label messageLabel, label, currentVersionLabel; FilenameComponent filenameComp; TextButton checkNowButton; ListBox availableVersionsList; + ValueTree versionsToDownload; + TextButton installButton; + ToggleButton selectAllButton; + ScopedPointer websiteContacterThread; - XmlElement* downloadVersionList(); - String getCurrentVersion(); - bool isAlreadyUpToDate(); + void checkNow(); + void install(); + void updateInstallButtonStatus(); + void refresh(); + void selectAll(); + int getNumCheckedModules() const; + bool isLatestVersion (const String& moduleID) const; - struct VersionInfo - { - URL url; - String desc; - String version; - String date; - }; + void valueTreePropertyChanged (ValueTree&, const Identifier&); + void valueTreeChildAdded (ValueTree&, ValueTree&); + void valueTreeChildRemoved (ValueTree&, ValueTree&); + void valueTreeChildOrderChanged (ValueTree&); + void valueTreeParentChanged (ValueTree&); - OwnedArray availableVersions; - - void updateVersions (const XmlElement& xml); - void applyVersion (VersionInfo* version); + JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (JuceUpdater); }; - -#endif // __JUCER_JUCEUPDATER_H_81537815__ +#endif // __JUCER_JUCEUPDATER_JUCEHEADER__ diff --git a/extras/Introjucer/Source/Application/jucer_Main.cpp b/extras/Introjucer/Source/Application/jucer_Main.cpp index 082eb38bd8..c4e8bc6b6f 100644 --- a/extras/Introjucer/Source/Application/jucer_Main.cpp +++ b/extras/Introjucer/Source/Application/jucer_Main.cpp @@ -2,7 +2,7 @@ ============================================================================== This file is part of the JUCE library - "Jules' Utility Class Extensions" - Copyright 2004-10 by Raw Material Software Ltd. + Copyright 2004-11 by Raw Material Software Ltd. ------------------------------------------------------------------------------ diff --git a/extras/Introjucer/Source/Application/jucer_MainWindow.cpp b/extras/Introjucer/Source/Application/jucer_MainWindow.cpp index a41d49a191..1402a837de 100644 --- a/extras/Introjucer/Source/Application/jucer_MainWindow.cpp +++ b/extras/Introjucer/Source/Application/jucer_MainWindow.cpp @@ -2,7 +2,7 @@ ============================================================================== This file is part of the JUCE library - "Jules' Utility Class Extensions" - Copyright 2004-10 by Raw Material Software Ltd. + Copyright 2004-11 by Raw Material Software Ltd. ------------------------------------------------------------------------------ @@ -30,48 +30,47 @@ #include "../Code Editor/jucer_SourceCodeEditor.h" #include "../Project/jucer_NewProjectWizard.h" -ApplicationCommandManager* commandManager = nullptr; +ScopedPointer commandManager; //============================================================================== MainWindow::MainWindow() - : DocumentWindow (JUCEApplication::getInstance()->getApplicationName(), + : DocumentWindow (JucerApplication::getApp()->getApplicationName(), Colour::greyLevel (0.6f), DocumentWindow::allButtons, false) { setUsingNativeTitleBar (true); - setContentOwned (new ProjectContentComponent(), false); + createProjectContentCompIfNeeded(); #if ! JUCE_MAC - JucerApplication* app = static_cast (JUCEApplication::getInstance()); - setMenuBar (app->menuModel); + setMenuBar (JucerApplication::getApp()->menuModel); #endif setResizable (true, false); - - centreWithSize (700, 600); + centreWithSize (800, 600); // Register all the app commands.. { commandManager->registerAllCommandsForTarget (this); + commandManager->registerAllCommandsForTarget (getProjectContentComponent()); - // use a temporary one of these to harvest its commands.. - ProjectContentComponent pcc; - commandManager->registerAllCommandsForTarget (&pcc); - + // use some temporary objects to harvest their commands.. DocumentEditorComponent dec (nullptr); commandManager->registerAllCommandsForTarget (&dec); } - commandManager->getKeyMappings()->resetToDefaultMappings(); + // update key mappings.. + { + commandManager->getKeyMappings()->resetToDefaultMappings(); - ScopedPointer keys (StoredSettings::getInstance()->getProps().getXmlValue ("keyMappings")); + ScopedPointer keys (StoredSettings::getInstance()->getProps().getXmlValue ("keyMappings")); - if (keys != nullptr) - commandManager->getKeyMappings()->restoreFromXml (*keys); + if (keys != nullptr) + commandManager->getKeyMappings()->restoreFromXml (*keys); - addKeyListener (commandManager->getKeyMappings()); + addKeyListener (commandManager->getKeyMappings()); + } // don't want the window to take focus when the title-bar is clicked.. setWantsKeyboardFocus (false); @@ -96,11 +95,20 @@ MainWindow::~MainWindow() currentProject = nullptr; } +void MainWindow::createProjectContentCompIfNeeded() +{ + if (getProjectContentComponent() == nullptr) + { + clearContentComponent(); + setContentOwned (new ProjectContentComponent(), false); + } +} + void MainWindow::makeVisible() { setVisible (true); + addToDesktop(); // (must add before restoring size so that fullscreen will work) restoreWindowPosition(); - addToDesktop(); getContentComponent()->grabKeyboardFocus(); } @@ -115,8 +123,7 @@ void MainWindow::closeButtonPressed() if (! closeCurrentProject()) return; - JucerApplication* jucer = static_cast (JUCEApplication::getInstance()); - jucer->closeWindow (this); + JucerApplication::getApp()->closeWindow (this); } bool MainWindow::closeProject (Project* project) @@ -132,6 +139,11 @@ bool MainWindow::closeProject (Project* project) if (! OpenDocumentManager::getInstance()->closeAllDocumentsUsingProject (*project, true)) return false; + ProjectContentComponent* const pcc = getProjectContentComponent(); + + if (pcc != nullptr) + pcc->saveTreeViewState(); + FileBasedDocument::SaveResult r = project->saveIfNeededAndUserAgrees(); if (r == FileBasedDocument::savedOk) @@ -150,6 +162,7 @@ bool MainWindow::closeCurrentProject() void MainWindow::setProject (Project* newProject) { + createProjectContentCompIfNeeded(); getProjectContentComponent()->setProject (newProject); currentProject = newProject; commandManager->commandStatusChanged(); @@ -157,7 +170,7 @@ void MainWindow::setProject (Project* newProject) // (mustn't do this when the project is 0, because that'll happen on shutdown, // which will erase the list of recent projects) if (newProject != nullptr) - static_cast (JUCEApplication::getInstance())->updateRecentProjectList(); + JucerApplication::getApp()->updateRecentProjectList(); } void MainWindow::restoreWindowPosition() @@ -181,6 +194,8 @@ bool MainWindow::canOpenFile (const File& file) const bool MainWindow::openFile (const File& file) { + createProjectContentCompIfNeeded(); + if (file.hasFileExtension (Project::projectFileExtension)) { ScopedPointer newDoc (new Project (file)); @@ -232,7 +247,7 @@ void MainWindow::activeWindowStatusChanged() void MainWindow::updateTitle (const String& documentName) { - String name (JUCEApplication::getInstance()->getApplicationName()); + String name (JucerApplication::getApp()->getApplicationName()); if (currentProject != nullptr) name = currentProject->getDocumentTitle() + " - " + name; @@ -243,6 +258,12 @@ void MainWindow::updateTitle (const String& documentName) setName (name); } +void MainWindow::showNewProjectWizard() +{ + jassert (currentProject == nullptr); + setContentOwned (NewProjectWizard::createComponent(), true); + makeVisible(); +} //============================================================================== ApplicationCommandTarget* MainWindow::getNextCommandTarget() diff --git a/extras/Introjucer/Source/Application/jucer_MainWindow.h b/extras/Introjucer/Source/Application/jucer_MainWindow.h index f0eb4b4ae4..613e07f07b 100644 --- a/extras/Introjucer/Source/Application/jucer_MainWindow.h +++ b/extras/Introjucer/Source/Application/jucer_MainWindow.h @@ -2,7 +2,7 @@ ============================================================================== This file is part of the JUCE library - "Jules' Utility Class Extensions" - Copyright 2004-10 by Raw Material Software Ltd. + Copyright 2004-11 by Raw Material Software Ltd. ------------------------------------------------------------------------------ @@ -57,6 +57,8 @@ public: bool closeProject (Project* project); bool closeCurrentProject(); + void showNewProjectWizard(); + bool isInterestedInFileDrag (const StringArray& files); void filesDropped (const StringArray& filenames, int mouseX, int mouseY); @@ -84,6 +86,8 @@ private: return "projectWindowPos_" + currentProject->getProjectUID(); } + void createProjectContentCompIfNeeded(); + JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (MainWindow); }; diff --git a/extras/Introjucer/Source/Application/jucer_OpenDocumentManager.cpp b/extras/Introjucer/Source/Application/jucer_OpenDocumentManager.cpp index 44718051b4..c14a1276d7 100644 --- a/extras/Introjucer/Source/Application/jucer_OpenDocumentManager.cpp +++ b/extras/Introjucer/Source/Application/jucer_OpenDocumentManager.cpp @@ -2,7 +2,7 @@ ============================================================================== This file is part of the JUCE library - "Jules' Utility Class Extensions" - Copyright 2004-10 by Raw Material Software Ltd. + Copyright 2004-11 by Raw Material Software Ltd. ------------------------------------------------------------------------------ @@ -40,17 +40,9 @@ public: reloadFromFile(); } - ~SourceCodeDocument() - { - } - //============================================================================== - class Type : public OpenDocumentManager::DocumentType + struct Type : public OpenDocumentManager::DocumentType { - public: - Type() {} - ~Type() {} - bool canOpenFile (const File& file) { return SourceCodeEditor::isTextFile (file); } Document* openFile (Project*, const File& file) { return new SourceCodeDocument (file); } }; @@ -60,6 +52,7 @@ public: bool isForFile (const File& file) const { return modDetector.getFile() == file; } bool isForNode (const ValueTree& node) const { return false; } bool refersToProject (Project& project) const { return false; } + bool canSaveAs() const { return true; } String getName() const { return modDetector.getFile().getFileName(); } String getType() const { return modDetector.getFile().getFileExtension() + " file"; } bool needsSaving() const { return codeDoc != nullptr && codeDoc->hasChangedSinceSavePoint(); } @@ -92,6 +85,12 @@ public: return true; } + bool saveAs() + { + jassertfalse; //xxx todo + return false; + } + Component* createEditor() { CodeTokeniser* tokeniser = nullptr; @@ -120,16 +119,10 @@ public: reloadFromFile(); } - ~UnknownDocument() {} - //============================================================================== - class Type : public OpenDocumentManager::DocumentType + struct Type : public OpenDocumentManager::DocumentType { - public: - Type() {} - ~Type() {} - - bool canOpenFile (const File& file) { return true; } + bool canOpenFile (const File&) { return true; } Document* openFile (Project* project, const File& file) { return new UnknownDocument (project, file); } }; @@ -140,6 +133,8 @@ public: bool refersToProject (Project& p) const { return project == &p; } bool needsSaving() const { return false; } bool save() { return true; } + bool canSaveAs() const { return false; } + bool saveAs() { return false; } bool hasFileBeenModifiedExternally() { return fileModificationTime != file.getLastModificationTime(); } void reloadFromFile() { fileModificationTime = file.getLastModificationTime(); } String getName() const { return file.getFileName(); } @@ -206,7 +201,7 @@ bool OpenDocumentManager::canOpenFile (const File& file) return false; } -OpenDocumentManager::Document* OpenDocumentManager::getDocumentForFile (Project* project, const File& file) +OpenDocumentManager::Document* OpenDocumentManager::openFile (Project* project, const File& file) { for (int i = documents.size(); --i >= 0;) if (documents.getUnchecked(i)->isForFile (file)) @@ -223,11 +218,9 @@ OpenDocumentManager::Document* OpenDocumentManager::getDocumentForFile (Project* } } - jassert (d != nullptr); - - if (d != nullptr) - documents.add (d); + jassert (d != nullptr); // should always at least have been picked up by UnknownDocument + documents.add (d); commandManager->commandStatusChanged(); return d; } @@ -322,6 +315,15 @@ void OpenDocumentManager::closeFile (const File& f, bool saveIfNeeded) } } +bool OpenDocumentManager::closeAll (bool askUserToSave) +{ + for (int i = getNumOpenDocuments(); --i >= 0;) + if (! closeDocument (i, askUserToSave)) + return false; + + return true; +} + bool OpenDocumentManager::closeAllDocumentsUsingProject (Project& project, bool saveIfNeeded) { for (int i = documents.size(); --i >= 0;) diff --git a/extras/Introjucer/Source/Application/jucer_OpenDocumentManager.h b/extras/Introjucer/Source/Application/jucer_OpenDocumentManager.h index 297b2dbbc0..5d6dfa0a6f 100644 --- a/extras/Introjucer/Source/Application/jucer_OpenDocumentManager.h +++ b/extras/Introjucer/Source/Application/jucer_OpenDocumentManager.h @@ -2,7 +2,7 @@ ============================================================================== This file is part of the JUCE library - "Jules' Utility Class Extensions" - Copyright 2004-10 by Raw Material Software Ltd. + Copyright 2004-11 by Raw Material Software Ltd. ------------------------------------------------------------------------------ @@ -56,6 +56,8 @@ public: virtual String getType() const = 0; virtual bool needsSaving() const = 0; virtual bool save() = 0; + virtual bool canSaveAs() const = 0; + virtual bool saveAs() = 0; virtual bool hasFileBeenModifiedExternally() = 0; virtual void reloadFromFile() = 0; virtual Component* createEditor() = 0; @@ -63,16 +65,16 @@ public: virtual void fileHasBeenRenamed (const File& newFile) = 0; }; - Document* getDocumentForFile (Project* project, const File& file); - bool canOpenFile (const File& file); - //============================================================================== int getNumOpenDocuments() const; Document* getOpenDocument (int index) const; void moveDocumentToTopOfStack (Document* doc); + bool canOpenFile (const File& file); + Document* openFile (Project* project, const File& file); bool closeDocument (int index, bool saveIfNeeded); bool closeDocument (Document* document, bool saveIfNeeded); + bool closeAll (bool askUserToSave); bool closeAllDocumentsUsingProject (Project& project, bool saveIfNeeded); void closeFile (const File& f, bool saveIfNeeded); bool anyFilesNeedSaving() const; diff --git a/extras/Introjucer/Source/BinaryData/jucer_AudioPluginEditorTemplate.cpp b/extras/Introjucer/Source/BinaryData/jucer_AudioPluginEditorTemplate.cpp index 5c7fef48bf..ae75de1247 100644 --- a/extras/Introjucer/Source/BinaryData/jucer_AudioPluginEditorTemplate.cpp +++ b/extras/Introjucer/Source/BinaryData/jucer_AudioPluginEditorTemplate.cpp @@ -1,7 +1,7 @@ /* ============================================================================== - This file was auto-generated by the Jucer! + This file was auto-generated by the Introjucer! It contains the basic startup code for a Juce application. diff --git a/extras/Introjucer/Source/BinaryData/jucer_AudioPluginEditorTemplate.h b/extras/Introjucer/Source/BinaryData/jucer_AudioPluginEditorTemplate.h index 45c00f9b03..2553c4554c 100644 --- a/extras/Introjucer/Source/BinaryData/jucer_AudioPluginEditorTemplate.h +++ b/extras/Introjucer/Source/BinaryData/jucer_AudioPluginEditorTemplate.h @@ -1,7 +1,7 @@ /* ============================================================================== - This file was auto-generated by the Jucer! + This file was auto-generated by the Introjucer! It contains the basic startup code for a Juce application. diff --git a/extras/Introjucer/Source/BinaryData/jucer_AudioPluginFilterTemplate.cpp b/extras/Introjucer/Source/BinaryData/jucer_AudioPluginFilterTemplate.cpp index 56ab9425bf..e826aef0a8 100644 --- a/extras/Introjucer/Source/BinaryData/jucer_AudioPluginFilterTemplate.cpp +++ b/extras/Introjucer/Source/BinaryData/jucer_AudioPluginFilterTemplate.cpp @@ -1,7 +1,7 @@ /* ============================================================================== - This file was auto-generated by the Jucer! + This file was auto-generated! It contains the basic startup code for a Juce application. diff --git a/extras/Introjucer/Source/BinaryData/jucer_AudioPluginFilterTemplate.h b/extras/Introjucer/Source/BinaryData/jucer_AudioPluginFilterTemplate.h index 11c1f69621..fd976734d5 100644 --- a/extras/Introjucer/Source/BinaryData/jucer_AudioPluginFilterTemplate.h +++ b/extras/Introjucer/Source/BinaryData/jucer_AudioPluginFilterTemplate.h @@ -1,7 +1,7 @@ /* ============================================================================== - This file was auto-generated by the Jucer! + This file was auto-generated! It contains the basic startup code for a Juce application. diff --git a/extras/Introjucer/Source/BinaryData/jucer_MainConsoleAppTemplate.cpp b/extras/Introjucer/Source/BinaryData/jucer_MainConsoleAppTemplate.cpp index 2612f392c4..4fb8dde760 100644 --- a/extras/Introjucer/Source/BinaryData/jucer_MainConsoleAppTemplate.cpp +++ b/extras/Introjucer/Source/BinaryData/jucer_MainConsoleAppTemplate.cpp @@ -1,7 +1,7 @@ /* ============================================================================== - This file was auto-generated by the Jucer! + This file was auto-generated! It contains the basic startup code for a Juce application. diff --git a/extras/Introjucer/Source/BinaryData/jucer_MainTemplate.cpp b/extras/Introjucer/Source/BinaryData/jucer_MainTemplate.cpp index ea271a63dc..f36084b0a9 100644 --- a/extras/Introjucer/Source/BinaryData/jucer_MainTemplate.cpp +++ b/extras/Introjucer/Source/BinaryData/jucer_MainTemplate.cpp @@ -1,7 +1,7 @@ /* ============================================================================== - This file was auto-generated by the Jucer! + This file was auto-generated by the Introjucer! It contains the basic startup code for a Juce application. diff --git a/extras/Introjucer/Source/BinaryData/jucer_WindowTemplate.cpp b/extras/Introjucer/Source/BinaryData/jucer_WindowTemplate.cpp index b6464917e0..dfd4b54427 100644 --- a/extras/Introjucer/Source/BinaryData/jucer_WindowTemplate.cpp +++ b/extras/Introjucer/Source/BinaryData/jucer_WindowTemplate.cpp @@ -1,7 +1,7 @@ /* ============================================================================== - This file was auto-generated by the Jucer! + This file was auto-generated! It contains the basic outline for a simple desktop window. diff --git a/extras/Introjucer/Source/BinaryData/jucer_WindowTemplate.h b/extras/Introjucer/Source/BinaryData/jucer_WindowTemplate.h index a4df1854a9..52832f0ba9 100644 --- a/extras/Introjucer/Source/BinaryData/jucer_WindowTemplate.h +++ b/extras/Introjucer/Source/BinaryData/jucer_WindowTemplate.h @@ -1,7 +1,7 @@ /* ============================================================================== - This file was auto-generated by the Jucer! + This file was auto-generated! It contains the basic outline for a simple desktop window. diff --git a/extras/Introjucer/Source/Code Editor/jucer_SourceCodeEditor.cpp b/extras/Introjucer/Source/Code Editor/jucer_SourceCodeEditor.cpp index 93e5371f6f..ca2a03e4a1 100644 --- a/extras/Introjucer/Source/Code Editor/jucer_SourceCodeEditor.cpp +++ b/extras/Introjucer/Source/Code Editor/jucer_SourceCodeEditor.cpp @@ -2,7 +2,7 @@ ============================================================================== This file is part of the JUCE library - "Jules' Utility Class Extensions" - Copyright 2004-10 by Raw Material Software Ltd. + Copyright 2004-11 by Raw Material Software Ltd. ------------------------------------------------------------------------------ @@ -52,7 +52,7 @@ SourceCodeEditor::~SourceCodeEditor() void SourceCodeEditor::resized() { - editor.setBounds (0, 0, getWidth(), getHeight()); + editor.setBounds (getLocalBounds()); } bool SourceCodeEditor::isTextFile (const File& file) diff --git a/extras/Introjucer/Source/Code Editor/jucer_SourceCodeEditor.h b/extras/Introjucer/Source/Code Editor/jucer_SourceCodeEditor.h index f643d89315..ed6b82977c 100644 --- a/extras/Introjucer/Source/Code Editor/jucer_SourceCodeEditor.h +++ b/extras/Introjucer/Source/Code Editor/jucer_SourceCodeEditor.h @@ -2,7 +2,7 @@ ============================================================================== This file is part of the JUCE library - "Jules' Utility Class Extensions" - Copyright 2004-10 by Raw Material Software Ltd. + Copyright 2004-11 by Raw Material Software Ltd. ------------------------------------------------------------------------------ diff --git a/extras/Introjucer/Source/Project/jucer_ProjectExport_Android.h b/extras/Introjucer/Source/Project Saving/jucer_ProjectExport_Android.h similarity index 74% rename from extras/Introjucer/Source/Project/jucer_ProjectExport_Android.h rename to extras/Introjucer/Source/Project Saving/jucer_ProjectExport_Android.h index c837c7e116..916cfd5718 100644 --- a/extras/Introjucer/Source/Project/jucer_ProjectExport_Android.h +++ b/extras/Introjucer/Source/Project Saving/jucer_ProjectExport_Android.h @@ -2,7 +2,7 @@ ============================================================================== This file is part of the JUCE library - "Jules' Utility Class Extensions" - Copyright 2004-10 by Raw Material Software Ltd. + Copyright 2004-11 by Raw Material Software Ltd. ------------------------------------------------------------------------------ @@ -55,10 +55,10 @@ public: getTargetLocation() = getDefaultBuildsRootFolder() + "Android"; if (getSDKPath().toString().isEmpty()) - getSDKPath() = "${user.home}/SDKs/android-sdk-mac_x86"; + getSDKPath() = "${user.home}/SDKs/android-sdk-macosx"; if (getNDKPath().toString().isEmpty()) - getNDKPath() = "${user.home}/SDKs/android-ndk-r5"; + getNDKPath() = "${user.home}/SDKs/android-ndk-r7"; if (getInternetNeeded().toString().isEmpty()) getInternetNeeded() = true; @@ -76,23 +76,24 @@ public: bool isPossibleForCurrentProject() { return projectType.isGUIApplication(); } bool usesMMFiles() const { return false; } + bool canCopeWithDuplicateFiles() { return false; } void launchProject() { } - void createPropertyEditors (Array & props) + void createPropertyEditors (PropertyListBuilder& props) { ProjectExporter::createPropertyEditors (props); - props.add (new TextPropertyComponent (getSDKPath(), "Android SDK Path", 1024, false)); - props.getLast()->setTooltip ("The path to the Android SDK folder on the target build machine"); + props.add (new TextPropertyComponent (getSDKPath(), "Android SDK Path", 1024, false), + "The path to the Android SDK folder on the target build machine"); - props.add (new TextPropertyComponent (getNDKPath(), "Android NDK Path", 1024, false)); - props.getLast()->setTooltip ("The path to the Android NDK folder on the target build machine"); + props.add (new TextPropertyComponent (getNDKPath(), "Android NDK Path", 1024, false), + "The path to the Android NDK folder on the target build machine"); - props.add (new BooleanPropertyComponent (getInternetNeeded(), "Internet Access", "Specify internet access permission in the manifest")); - props.getLast()->setTooltip ("If enabled, this will set the android.permission.INTERNET flag in the manifest."); + props.add (new BooleanPropertyComponent (getInternetNeeded(), "Internet Access", "Specify internet access permission in the manifest"), + "If enabled, this will set the android.permission.INTERNET flag in the manifest."); } Value getSDKPath() const { return getSetting (Ids::androidSDKPath); } @@ -116,7 +117,7 @@ public: { ScopedPointer manifest (createManifestXML()); - writeXmlOrThrow (*manifest, target.getChildFile ("AndroidManifest.xml"), "utf-8", 100); + writeXmlOrThrow (*manifest, target.getChildFile ("AndroidManifest.xml"), "utf-8", 100, true); } writeApplicationMk (jniFolder.getChildFile ("Application.mk")); @@ -127,8 +128,7 @@ public: writeXmlOrThrow (*antBuildXml, target.getChildFile ("build.xml"), "UTF-8", 100); } - writeBuildPropertiesFile (target.getChildFile ("build.properties")); - writeDefaultPropertiesFile (target.getChildFile ("default.properties")); + writeProjectPropertiesFile (target.getChildFile ("project.properties")); writeLocalPropertiesFile (target.getChildFile ("local.properties")); writeIcon (target.getChildFile ("res/drawable-hdpi/icon.png"), 72); @@ -138,6 +138,32 @@ public: writeStringsFile (target.getChildFile ("res/values/strings.xml")); } +protected: + //============================================================================== + class AndroidBuildConfiguration : public BuildConfiguration + { + public: + AndroidBuildConfiguration (Project& project, const ValueTree& settings) + : BuildConfiguration (project, settings) + { + androidDynamicLibs.add ("GLESv1_CM"); + androidDynamicLibs.add ("GLESv2"); + } + + void createPropertyEditors (PropertyListBuilder& props) + { + createBasicPropertyEditors (props); + + } + + StringArray androidDynamicLibs; + }; + + BuildConfiguration::Ptr createBuildConfig (const ValueTree& settings) const + { + return new AndroidBuildConfiguration (project, settings); + } + private: //============================================================================== XmlElement* createManifestXML() @@ -153,7 +179,7 @@ private: screens->setAttribute ("android:smallScreens", "true"); screens->setAttribute ("android:normalScreens", "true"); screens->setAttribute ("android:largeScreens", "true"); - screens->setAttribute ("android:xlargeScreens", "true"); + //screens->setAttribute ("android:xlargeScreens", "true"); screens->setAttribute ("android:anyDensity", "true"); if (getInternetNeeded().getValue()) @@ -196,11 +222,12 @@ private: { MemoryOutputStream mo; - mo << "# Automatically generated makefile, created by the Jucer" << newLine - << "# Don't edit this file! Your changes will be overwritten when you re-save the Jucer project!" << newLine + mo << "# Automatically generated makefile, created by the Introjucer" << newLine + << "# Don't edit this file! Your changes will be overwritten when you re-save the Introjucer project!" << newLine << newLine << "APP_STL := gnustl_static" << newLine - << "APP_CPPFLAGS += -fsigned-char -fexceptions -frtti" << newLine; + << "APP_CPPFLAGS += -fsigned-char -fexceptions -frtti" << newLine + << "APP_PLATFORM := android-7" << newLine; overwriteFileIfDifferentOrThrow (file, mo); } @@ -220,42 +247,83 @@ private: void writeAndroidMk (OutputStream& out, const Array& files) { - out << "# Automatically generated makefile, created by the Jucer" << newLine - << "# Don't edit this file! Your changes will be overwritten when you re-save the Jucer project!" << newLine + out << "# Automatically generated makefile, created by the Introjucer" << newLine + << "# Don't edit this file! Your changes will be overwritten when you re-save the Introjucer project!" << newLine << newLine << "LOCAL_PATH := $(call my-dir)" << newLine << newLine << "include $(CLEAR_VARS)" << newLine << newLine - << "LOCAL_CPP_EXTENSION := cpp" << newLine << "LOCAL_MODULE := juce_jni" << newLine << "LOCAL_SRC_FILES := \\" << newLine; for (int i = 0; i < files.size(); ++i) out << " ../" << escapeSpaces (files.getReference(i).toUnixStyle()) << "\\" << newLine; + String debugSettings, releaseSettings; + out << newLine - << "ifeq ($(CONFIG),Debug)" << newLine - << " LOCAL_CPPFLAGS += " << createCPPFlags (true) << newLine - << "else" << newLine - << " LOCAL_CPPFLAGS += " << createCPPFlags (false) << newLine - << "endif" << newLine + << "ifeq ($(CONFIG),Debug)" << newLine; + writeConfigSettings (out, true); + out << "else" << newLine; + writeConfigSettings (out, false); + out << "endif" << newLine << newLine << "include $(BUILD_SHARED_LIBRARY)" << newLine; } - String createCPPFlags (bool forDebug) + void writeConfigSettings (OutputStream& out, bool forDebug) { - String flags ("-fsigned-char -fexceptions -frtti"); + for (ConfigIterator config (*this); config.next();) + { + if (config->isDebug() == forDebug) + { + out << " LOCAL_CPPFLAGS += " << createCPPFlags (*config) << newLine + << getDynamicLibs (dynamic_cast (*config)); - if (forDebug) - flags << " -g"; + break; + } + } + } + String getDynamicLibs (const AndroidBuildConfiguration& config) + { + if (config.androidDynamicLibs.size() == 0) + return String::empty; + + String flags (" LOCAL_LDLIBS :="); + + flags << config.getGCCLibraryPathFlags(); + + for (int i = 0; i < config.androidDynamicLibs.size(); ++i) + flags << " -l" << config.androidDynamicLibs[i]; + + return flags + newLine; + } + + String createIncludePathFlags (const BuildConfiguration& config) + { + String flags; + StringArray searchPaths (extraSearchPaths); + searchPaths.addArray (config.getHeaderSearchPaths()); + searchPaths.removeDuplicates (false); + + for (int i = 0; i < searchPaths.size(); ++i) + flags << " -I " << FileHelpers::unixStylePath (replacePreprocessorTokens (config, searchPaths[i])).quoted(); + + return flags; + } + + String createCPPFlags (const BuildConfiguration& config) + { StringPairArray defines; defines.set ("JUCE_ANDROID", "1"); - if (forDebug) + String flags ("-fsigned-char -fexceptions -frtti"); + + if (config.isDebug().getValue()) { + flags << " -g"; defines.set ("DEBUG", "1"); defines.set ("_DEBUG", "1"); } @@ -264,19 +332,10 @@ private: defines.set ("NDEBUG", "1"); } - for (int i = 0; i < configs.size(); ++i) - { - const Project::BuildConfiguration& config = configs.getReference(i); - - if (config.isDebug() == forDebug) - { - flags << " -O" << config.getGCCOptimisationFlag(); - - defines = mergePreprocessorDefs (defines, getAllPreprocessorDefs (config)); - break; - } - } + flags << createIncludePathFlags (config) + << " -O" << config.getGCCOptimisationFlag(); + defines = mergePreprocessorDefs (defines, getAllPreprocessorDefs (config)); return flags + createGCCPreprocessorFlags (defines); } @@ -287,9 +346,8 @@ private: proj->setAttribute ("name", projectName); proj->setAttribute ("default", "debug"); - proj->createNewChildElement ("property")->setAttribute ("file", "local.properties"); - proj->createNewChildElement ("property")->setAttribute ("file", "build.properties"); - proj->createNewChildElement ("property")->setAttribute ("file", "default.properties"); + proj->createNewChildElement ("loadproperties")->setAttribute ("srcFile", "local.properties"); + proj->createNewChildElement ("loadproperties")->setAttribute ("srcFile", "project.properties"); XmlElement* path = proj->createNewChildElement ("path"); path->setAttribute ("id", "android.antlibs"); @@ -305,12 +363,12 @@ private: addNDKBuildStep (proj, "clean", "clean"); //addLinkStep (proj, "${basedir}/" + rebaseFromProjectFolderToBuildTarget (RelativePath()).toUnixStyle() + "/", "jni/app"); - addLinkStep (proj, "${basedir}/" + getJucePathFromTargetFolder().toUnixStyle() + "/src/native/android/java/", "src/com/juce"); + addLinkStep (proj, "${basedir}/" + getJucePathFromTargetFolder().toUnixStyle() + "/modules/juce_core/native/java/", "src/com/juce"); addNDKBuildStep (proj, "debug", "CONFIG=Debug"); addNDKBuildStep (proj, "release", "CONFIG=Release"); - proj->createNewChildElement ("setup"); + proj->createNewChildElement ("import")->setAttribute ("file", "${sdk.dir}/tools/ant/build.xml"); return proj; } @@ -341,20 +399,13 @@ private: executable->createNewChildElement ("arg")->setAttribute ("value", to); } - void writeBuildPropertiesFile (const File& file) - { - MemoryOutputStream mo; - mo << "# This file is used to override default values used by the Ant build system." << newLine; - overwriteFileIfDifferentOrThrow (file, mo); - } - - void writeDefaultPropertiesFile (const File& file) + void writeProjectPropertiesFile (const File& file) { MemoryOutputStream mo; mo << "# This file is used to override default values used by the Ant build system." << newLine << "# It is automatically generated - DO NOT EDIT IT or your changes will be lost!." << newLine << newLine - << "target=android-9" + << "target=Google Inc.:Google APIs:7" << newLine << newLine; overwriteFileIfDifferentOrThrow (file, mo); @@ -364,7 +415,7 @@ private: { MemoryOutputStream mo; mo << "# This file is used to override default values used by the Ant build system." << newLine - << "# It is automatically generated by the Jucer - DO NOT EDIT IT or your changes will be lost!." << newLine + << "# It is automatically generated by the Introjucer - DO NOT EDIT IT or your changes will be lost!." << newLine << newLine << "sdk.dir=" << escapeSpaces (replacePreprocessorDefs (getAllPreprocessorDefs(), getSDKPath().toString())) << newLine << "ndk.dir=" << escapeSpaces (replacePreprocessorDefs (getAllPreprocessorDefs(), getNDKPath().toString())) << newLine diff --git a/extras/Introjucer/Source/Project/jucer_ProjectExport_MSVC.h b/extras/Introjucer/Source/Project Saving/jucer_ProjectExport_MSVC.h similarity index 72% rename from extras/Introjucer/Source/Project/jucer_ProjectExport_MSVC.h rename to extras/Introjucer/Source/Project Saving/jucer_ProjectExport_MSVC.h index 71f5ee8420..04e05228f6 100644 --- a/extras/Introjucer/Source/Project/jucer_ProjectExport_MSVC.h +++ b/extras/Introjucer/Source/Project Saving/jucer_ProjectExport_MSVC.h @@ -2,7 +2,7 @@ ============================================================================== This file is part of the JUCE library - "Jules' Utility Class Extensions" - Copyright 2004-10 by Raw Material Software Ltd. + Copyright 2004-11 by Raw Material Software Ltd. ------------------------------------------------------------------------------ @@ -44,14 +44,24 @@ public: getLibraryType() = 1; projectGUID = createGUID (project.getProjectUID()); + + const String oldStylePrebuildCommand (getSetting (Ids::prebuildCommand).toString()); + if (oldStylePrebuildCommand.isNotEmpty()) // update an old project format.. + { + for (ConfigIterator config (*this); config.next();) + dynamic_cast (*config).getPrebuildCommand() = oldStylePrebuildCommand; + + settings.removeProperty (Ids::prebuildCommand, nullptr); + } } //============================================================================== bool isPossibleForCurrentProject() { return true; } bool usesMMFiles() const { return false; } bool isVisualStudio() const { return true; } + bool canCopeWithDuplicateFiles() { return false; } - void createPropertyEditors (Array & props) + void createPropertyEditors (PropertyListBuilder& props) { ProjectExporter::createPropertyEditors (props); @@ -59,13 +69,16 @@ public: { const char* const libTypes[] = { "Static Library (.lib)", "Dynamic Library (.dll)", 0 }; const int libTypeValues[] = { 1, 2, 0 }; - props.add (new ChoicePropertyComponent (getLibraryType(), "Library Type", StringArray (libTypes), Array (libTypeValues))); + props.add (new ChoicePropertyComponent (getLibraryType(), "Library Type", + StringArray (libTypes), Array (libTypeValues))); - props.add (new TextPropertyComponent (getSetting (Ids::libraryName_Debug), "Library Name (Debug)", 128, false)); - props.getLast()->setTooltip ("If set, this name will override the binary name specified in the configuration settings, for a debug build. You must include the .lib or .dll suffix on this filename."); + props.add (new TextPropertyComponent (getSetting (Ids::libraryName_Debug), "Library Name (Debug)", 128, false), + "If set, this name will override the binary name specified in the configuration settings, for a debug build. " + "You must include the .lib or .dll suffix on this filename."); - props.add (new TextPropertyComponent (getSetting (Ids::libraryName_Release), "Library Name (Release)", 128, false)); - props.getLast()->setTooltip ("If set, this name will override the binary name specified in the configuration settings, for a release build. You must include the .lib or .dll suffix on this filename."); + props.add (new TextPropertyComponent (getSetting (Ids::libraryName_Release), "Library Name (Release)", 128, false), + "If set, this name will override the binary name specified in the configuration settings, for a release build. " + "You must include the .lib or .dll suffix on this filename."); } } @@ -77,26 +90,81 @@ protected: File getProjectFile (const String& extension) const { return getTargetFolder().getChildFile (project.getProjectFilenameRoot()).withFileExtension (extension); } Value getLibraryType() const { return getSetting (Ids::libraryType); } - bool isLibraryDLL() const { return projectType.isLibrary() && getLibraryType() == 2; } + bool isLibraryDLL() const { return msvcIsDLL || (projectType.isLibrary() && getLibraryType() == 2); } //============================================================================== - String getIntermediatesPath (const Project::BuildConfiguration& config) const + class MSVCBuildConfiguration : public BuildConfiguration + { + public: + MSVCBuildConfiguration (Project& project, const ValueTree& settings) + : BuildConfiguration (project, settings) + { + if (getWarningLevel() == 0) + getWarningLevelValue() = 4; + + msvcPreBuildCommand = getPrebuildCommand().toString(); + msvcPostBuildCommand = getPostbuildCommand().toString(); + + if (shouldGenerateManifest().getValue().isVoid()) + shouldGenerateManifest() = var (true); + } + + Value getWarningLevelValue() const { return getValue (Ids::winWarningLevel); } + int getWarningLevel() const { return getWarningLevelValue().getValue(); } + + Value getPrebuildCommand() const { return getValue (Ids::prebuildCommand); } + Value getPostbuildCommand() const { return getValue (Ids::postbuildCommand); } + + Value shouldGenerateManifest() const { return getValue (Ids::generateManifest); } + + void createPropertyEditors (PropertyListBuilder& props) + { + createBasicPropertyEditors (props); + + const char* const warningLevelNames[] = { "Low", "Medium", "High", nullptr }; + const int warningLevels[] = { 2, 3, 4, 0 }; + + props.add (new ChoicePropertyComponent (getWarningLevelValue(), "Warning Level", + StringArray (warningLevelNames), Array (warningLevels))); + + props.add (new TextPropertyComponent (getPrebuildCommand(), "Pre-build Command", 2048, false)); + props.add (new TextPropertyComponent (getPostbuildCommand(), "Post-build Command", 2048, false)); + props.add (new BooleanPropertyComponent (shouldGenerateManifest(), "Manifest", "Generate Manifest")); + } + }; + + BuildConfiguration::Ptr createBuildConfig (const ValueTree& settings) const + { + return new MSVCBuildConfiguration (project, settings); + } + + static int getWarningLevel (const BuildConfiguration& config) + { + return dynamic_cast (config).getWarningLevel(); + } + + //============================================================================== + String getIntermediatesPath (const BuildConfiguration& config) const { return ".\\" + File::createLegalFileName (config.getName().toString().trim()); } - String getConfigTargetPath (const Project::BuildConfiguration& config) const + String getConfigTargetPath (const BuildConfiguration& config) const { const String binaryPath (config.getTargetBinaryRelativePath().toString().trim()); if (binaryPath.isEmpty()) return getIntermediatesPath (config); - return ".\\" + RelativePath (binaryPath, RelativePath::projectFolder) - .rebased (projectFolder, getTargetFolder(), RelativePath::buildTargetFolder) - .toWindowsStyle(); + RelativePath binaryRelPath (binaryPath, RelativePath::projectFolder); + + if (binaryRelPath.isAbsolute()) + return binaryRelPath.toWindowsStyle(); + + return ".\\" + binaryRelPath.rebased (projectFolder, getTargetFolder(), RelativePath::buildTargetFolder) + .toWindowsStyle(); } - String getPreprocessorDefs (const Project::BuildConfiguration& config, const String& joinString) const + String getPreprocessorDefs (const BuildConfiguration& config, const String& joinString) const { StringPairArray defines (msvcExtraPreprocessorDefs); defines.set ("WIN32", ""); @@ -129,18 +197,15 @@ protected: return result.joinIntoString (joinString); } - StringArray getHeaderSearchPaths (const Project::BuildConfiguration& config) const + StringArray getHeaderSearchPaths (const BuildConfiguration& config) const { - StringArray searchPaths (config.getHeaderSearchPaths()); - - for (int i = 0; i < libraryModules.size(); ++i) - libraryModules.getUnchecked(i)->addExtraSearchPaths (*this, searchPaths); - + StringArray searchPaths (extraSearchPaths); + searchPaths.addArray (config.getHeaderSearchPaths()); searchPaths.removeDuplicates (false); return searchPaths; } - String getBinaryFileForConfig (const Project::BuildConfiguration& config) const + String getBinaryFileForConfig (const BuildConfiguration& config) const { const String targetBinary (getSetting (config.isDebug().getValue() ? Ids::libraryName_Debug : Ids::libraryName_Release).toString().trim()); if (targetBinary.isNotEmpty()) @@ -149,36 +214,39 @@ protected: return config.getTargetBinaryName().toString() + msvcTargetSuffix; } - static String createConfigName (const Project::BuildConfiguration& config) + virtual String createConfigName (const BuildConfiguration& config) const { return config.getName().toString() + "|Win32"; } //============================================================================== - void writeSolutionFile (OutputStream& out, const String& versionString, const File& vcProject) + void writeSolutionFile (OutputStream& out, const String& versionString, String commentString, const File& vcProject) { + if (commentString.isNotEmpty()) + commentString += newLine; + out << "Microsoft Visual Studio Solution File, Format Version " << versionString << newLine + << commentString << "Project(\"" << createGUID (projectName + "sln_guid") << "\") = \"" << projectName << "\", \"" << vcProject.getFileName() << "\", \"" << projectGUID << '"' << newLine << "EndProject" << newLine << "Global" << newLine << "\tGlobalSection(SolutionConfigurationPlatforms) = preSolution" << newLine; - int i; - for (i = 0; i < configs.size(); ++i) + for (ConfigIterator i (*this); i.next();) { - const Project::BuildConfiguration& config = configs.getReference(i); - out << "\t\t" << createConfigName (config) << " = " << createConfigName (config) << newLine; + const String configName (createConfigName (*i)); + out << "\t\t" << configName << " = " << configName << newLine; } out << "\tEndGlobalSection" << newLine << "\tGlobalSection(ProjectConfigurationPlatforms) = postSolution" << newLine; - for (i = 0; i < configs.size(); ++i) + for (ConfigIterator i (*this); i.next();) { - const Project::BuildConfiguration& config = configs.getReference(i); - out << "\t\t" << projectGUID << "." << createConfigName (config) << ".ActiveCfg = " << createConfigName (config) << newLine; - out << "\t\t" << projectGUID << "." << createConfigName (config) << ".Build.0 = " << createConfigName (config) << newLine; + const String configName (createConfigName (*i)); + out << "\t\t" << projectGUID << "." << configName << ".ActiveCfg = " << configName << newLine; + out << "\t\t" << projectGUID << "." << configName << ".Build.0 = " << configName << newLine; } out << "\tEndGlobalSection" << newLine @@ -196,7 +264,75 @@ protected: + iconFile.getFileName().quoted(), false, false); } - static void writeIconFile (const Array& images, OutputStream& out) + static void writeBMPImage (const Image& image, const int w, const int h, MemoryOutputStream& out) + { + const int maskStride = (w / 8 + 3) & ~3; + + out.writeInt (40); // bitmapinfoheader size + out.writeInt (w); + out.writeInt (h * 2); + out.writeShort (1); // planes + out.writeShort (32); // bits + out.writeInt (0); // compression + out.writeInt ((h * w * 4) + (h * maskStride)); // size image + out.writeInt (0); // x pixels per meter + out.writeInt (0); // y pixels per meter + out.writeInt (0); // clr used + out.writeInt (0); // clr important + + const Image::BitmapData bitmap (image, Image::BitmapData::readOnly); + const int alphaThreshold = 5; + + int y; + for (y = h; --y >= 0;) + { + for (int x = 0; x < w; ++x) + { + const Colour pixel (bitmap.getPixelColour (x, y)); + + if (pixel.getAlpha() <= alphaThreshold) + { + out.writeInt (0); + } + else + { + out.writeByte ((char) pixel.getBlue()); + out.writeByte ((char) pixel.getGreen()); + out.writeByte ((char) pixel.getRed()); + out.writeByte ((char) pixel.getAlpha()); + } + } + } + + for (y = h; --y >= 0;) + { + int mask = 0, count = 0; + + for (int x = 0; x < w; ++x) + { + const Colour pixel (bitmap.getPixelColour (x, y)); + + mask <<= 1; + if (pixel.getAlpha() <= alphaThreshold) + mask |= 1; + + if (++count == 8) + { + out.writeByte ((char) mask); + count = 0; + mask = 0; + } + } + + if (mask != 0) + out.writeByte ((char) mask); + + for (int i = maskStride - w / 8; --i >= 0;) + out.writeByte (0); + } + } + + static void writeIconFile (const Array& images, MemoryOutputStream& out) { out.writeShort (0); // reserved out.writeShort (1); // .ico tag @@ -209,73 +345,20 @@ protected: for (int i = 0; i < images.size(); ++i) { + const size_t oldDataSize = dataBlock.getDataSize(); + const Image& image = images.getReference (i); const int w = image.getWidth(); const int h = image.getHeight(); - const int maskStride = (w / 8 + 3) & ~3; - const size_t oldDataSize = dataBlock.getDataSize(); - dataBlock.writeInt (40); // bitmapinfoheader size - dataBlock.writeInt (w); - dataBlock.writeInt (h * 2); - dataBlock.writeShort (1); // planes - dataBlock.writeShort (32); // bits - dataBlock.writeInt (0); // compression - dataBlock.writeInt ((h * w * 4) + (h * maskStride)); // size image - dataBlock.writeInt (0); // x pixels per meter - dataBlock.writeInt (0); // y pixels per meter - dataBlock.writeInt (0); // clr used - dataBlock.writeInt (0); // clr important - - const Image::BitmapData bitmap (image, Image::BitmapData::readOnly); - const int alphaThreshold = 5; - - int y; - for (y = h; --y >= 0;) + if (w >= 256 || h >= 256) { - for (int x = 0; x < w; ++x) - { - const Colour pixel (bitmap.getPixelColour (x, y)); - - if (pixel.getAlpha() <= alphaThreshold) - { - dataBlock.writeInt (0); - } - else - { - dataBlock.writeByte ((char) pixel.getBlue()); - dataBlock.writeByte ((char) pixel.getGreen()); - dataBlock.writeByte ((char) pixel.getRed()); - dataBlock.writeByte ((char) pixel.getAlpha()); - } - } + PNGImageFormat pngFormat; + pngFormat.writeImageToStream (image, dataBlock); } - - for (y = h; --y >= 0;) + else { - int mask = 0, count = 0; - - for (int x = 0; x < w; ++x) - { - const Colour pixel (bitmap.getPixelColour (x, y)); - - mask <<= 1; - if (pixel.getAlpha() <= alphaThreshold) - mask |= 1; - - if (++count == 8) - { - dataBlock.writeByte ((char) mask); - count = 0; - mask = 0; - } - } - - if (mask != 0) - dataBlock.writeByte ((char) mask); - - for (int i = maskStride - w / 8; --i >= 0;) - dataBlock.writeByte (0); + writeBMPImage (image, w, h, dataBlock); } out.writeByte ((char) w); @@ -296,21 +379,14 @@ protected: { Array images; - Image im (getBestIconForSize (16, true)); - if (im.isValid()) - images.add (im); + const int sizes[] = { 16, 32, 48, 256 }; - im = getBestIconForSize (32, true); - if (im.isValid()) - images.add (im); - - im = getBestIconForSize (48, true); - if (im.isValid()) - images.add (im); - - im = getBestIconForSize (128, true); - if (im.isValid()) - images.add (im); + for (int i = 0; i < numElementsInArray (sizes); ++i) + { + Image im (getBestIconForSize (sizes[i], true)); + if (im.isValid()) + images.add (im); + } if (images.size() == 0) return true; @@ -360,7 +436,7 @@ public: if (settings.hasType (getValueTreeTypeName())) return new MSVCProjectExporterVC2008 (project, settings); - return 0; + return nullptr; } //============================================================================== @@ -376,8 +452,8 @@ public: if (group.getID() == ProjectSaver::getGeneratedGroupID()) { - group.addFile (iconFile, -1); - group.addFile (rcFile, -1); + group.addFile (iconFile, -1, true); + group.addFile (rcFile, -1, true); group.findItemForFile (iconFile).getShouldAddToResourceValue() = false; group.findItemForFile (rcFile).getShouldAddToResourceValue() = false; @@ -394,7 +470,7 @@ public: { MemoryOutputStream mo; - writeSolutionFile (mo, getSolutionVersionString(), getVCProjFile()); + writeSolutionFile (mo, getSolutionVersionString(), String::empty, getVCProjFile()); overwriteFileIfDifferentOrThrow (getSLNFile(), mo); } @@ -439,12 +515,10 @@ protected: if (excludeFromBuild || useStdcall) { - for (int i = 0; i < configs.size(); ++i) + for (ConfigIterator i (*this); i.next();) { - const Project::BuildConfiguration& config = configs.getReference(i); - XmlElement* fileConfig = fileXml->createNewChildElement ("FileConfiguration"); - fileConfig->setAttribute ("Name", createConfigName (config)); + fileConfig->setAttribute ("Name", createConfigName (*i)); if (excludeFromBuild) fileConfig->setAttribute ("ExcludedFromBuild", "true"); @@ -498,7 +572,7 @@ protected: return e; } - void createConfig (XmlElement& xml, const Project::BuildConfiguration& config) const + void createConfig (XmlElement& xml, const MSVCBuildConfiguration& config) const { String binariesPath (getConfigTargetPath (config)); String intermediatesPath (getIntermediatesPath (config)); @@ -508,7 +582,7 @@ protected: xml.setAttribute ("Name", createConfigName (config)); xml.setAttribute ("OutputDirectory", FileHelpers::windowsStylePath (binariesPath)); xml.setAttribute ("IntermediateDirectory", FileHelpers::windowsStylePath (intermediatesPath)); - xml.setAttribute ("ConfigurationType", (msvcIsDLL || isLibraryDLL()) ? "2" : (projectType.isLibrary() ? "4" : "1")); + xml.setAttribute ("ConfigurationType", isLibraryDLL() ? "2" : (projectType.isLibrary() ? "4" : "1")); xml.setAttribute ("UseOfMFC", "0"); xml.setAttribute ("ATLMinimizesCRunTimeLibraryUsage", "false"); xml.setAttribute ("CharacterSet", "2"); @@ -516,16 +590,15 @@ protected: if (! isDebug) xml.setAttribute ("WholeProgramOptimization", "1"); - createToolElement (xml, "VCPreBuildEventTool"); + XmlElement* preBuildEvent = createToolElement (xml, "VCPreBuildEventTool"); - XmlElement* customBuild = createToolElement (xml, "VCCustomBuildTool"); - - if (msvcPostBuildCommand.isNotEmpty()) - customBuild->setAttribute ("CommandLine", msvcPostBuildCommand); - - if (msvcPostBuildOutputs.isNotEmpty()) - customBuild->setAttribute ("Outputs", msvcPostBuildOutputs); + if (config.msvcPreBuildCommand.isNotEmpty()) + { + preBuildEvent->setAttribute ("Description", "Pre-build"); + preBuildEvent->setAttribute ("CommandLine", config.msvcPreBuildCommand); + } + createToolElement (xml, "VCCustomBuildTool"); createToolElement (xml, "VCXMLDataGeneratorTool"); createToolElement (xml, "VCWebServiceProxyGeneratorTool"); @@ -544,7 +617,7 @@ protected: XmlElement* compiler = createToolElement (xml, "VCCLCompilerTool"); const int optimiseLevel = (int) config.getOptimisationLevel().getValue(); - compiler->setAttribute ("Optimization", optimiseLevel <= 1 ? "0" : (optimiseLevel == 2 ? "2" : "3")); + compiler->setAttribute ("Optimization", optimiseLevel <= 1 ? "0" : (optimiseLevel == 2 ? "1" : "2")); if (isDebug) { @@ -567,7 +640,7 @@ protected: compiler->setAttribute ("AssemblerListingLocation", FileHelpers::windowsStylePath (intermediatesPath + "/")); compiler->setAttribute ("ObjectFile", FileHelpers::windowsStylePath (intermediatesPath + "/")); compiler->setAttribute ("ProgramDataBaseFileName", FileHelpers::windowsStylePath (intermediatesPath + "/")); - compiler->setAttribute ("WarningLevel", "4"); + compiler->setAttribute ("WarningLevel", String (getWarningLevel (config))); compiler->setAttribute ("SuppressStartupBanner", "true"); const String extraFlags (replacePreprocessorTokens (config, getExtraCompilerFlags().toString()).trim()); @@ -593,17 +666,19 @@ protected: linker->setAttribute ("OutputFile", FileHelpers::windowsStylePath (binariesPath + "/" + outputFileName)); linker->setAttribute ("SuppressStartupBanner", "true"); - if (project.getJuceLinkageMode() == Project::useLinkedJuce) - linker->setAttribute ("AdditionalLibraryDirectories", getJucePathFromTargetFolder().getChildFile ("bin").toWindowsStyle()); - linker->setAttribute ("IgnoreDefaultLibraryNames", isDebug ? "libcmt.lib, msvcrt.lib" : ""); linker->setAttribute ("GenerateDebugInformation", isDebug ? "true" : "false"); linker->setAttribute ("ProgramDatabaseFile", FileHelpers::windowsStylePath (intermediatesPath + "/" + binaryName + ".pdb")); linker->setAttribute ("SubSystem", msvcIsWindowsSubsystem ? "2" : "1"); + const StringArray librarySearchPaths (config.getLibrarySearchPaths()); + if (librarySearchPaths.size() > 0) + linker->setAttribute ("AdditionalLibraryDirectories", librarySearchPaths.joinIntoString (";")); + + linker->setAttribute ("GenerateManifest", config.shouldGenerateManifest().getValue() ? "true" : "false"); + if (! isDebug) { - linker->setAttribute ("GenerateManifest", "false"); linker->setAttribute ("OptimizeReferences", "2"); linker->setAttribute ("EnableCOMDATFolding", "2"); } @@ -613,13 +688,13 @@ protected: if (msvcDelayLoadedDLLs.isNotEmpty()) linker->setAttribute ("DelayLoadDLLs", msvcDelayLoadedDLLs); - if (msvcModuleDefinitionFile.isNotEmpty()) - linker->setAttribute ("ModuleDefinitionFile", msvcModuleDefinitionFile); + if (config.msvcModuleDefinitionFile.isNotEmpty()) + linker->setAttribute ("ModuleDefinitionFile", config.msvcModuleDefinitionFile); String extraLinkerOptions (getExtraLinkerFlags().toString()); - if (msvcExtraLinkerOptions.isNotEmpty()) - extraLinkerOptions << ' ' << msvcExtraLinkerOptions; + if (config.msvcExtraLinkerOptions.isNotEmpty()) + extraLinkerOptions << ' ' << config.msvcExtraLinkerOptions; if (extraLinkerOptions.isNotEmpty()) linker->setAttribute ("AdditionalOptions", replacePreprocessorTokens (config, extraLinkerOptions).trim()); @@ -661,13 +736,20 @@ protected: if (! projectType.isLibrary()) createToolElement (xml, "VCAppVerifierTool"); - createToolElement (xml, "VCPostBuildEventTool"); + XmlElement* postBuildEvent = createToolElement (xml, "VCPostBuildEventTool"); + + if (config.msvcPostBuildCommand.isNotEmpty()) + { + postBuildEvent->setAttribute ("Description", "Post-build"); + postBuildEvent->setAttribute ("CommandLine", config.msvcPostBuildCommand); + } } void createConfigs (XmlElement& xml) { - for (int i = 0; i < configs.size(); ++i) - createConfig (*xml.createNewChildElement ("Configuration"), configs.getReference(i)); + for (ConfigIterator config (*this); config.next();) + createConfig (*xml.createNewChildElement ("Configuration"), + dynamic_cast (*config)); } //============================================================================== @@ -707,7 +789,7 @@ public: protected: String getProjectVersionString() const { return "8.00"; } - String getSolutionVersionString() const { return "8.00" + newLine + "# Visual C++ Express 2005"; } + String getSolutionVersionString() const { return "9.00" + newLine + "# Visual C++ Express 2005"; } JUCE_DECLARE_NON_COPYABLE (MSVCProjectExporterVC2005); }; @@ -743,7 +825,7 @@ public: if (settings.hasType (getValueTreeTypeName())) return new MSVCProjectExporterVC6 (project, settings); - return 0; + return nullptr; } //============================================================================== @@ -767,18 +849,18 @@ private: File getDSWFile() const { return getProjectFile (".dsw"); } //============================================================================== - String createConfigName (const Project::BuildConfiguration& config) const + String createConfigName (const BuildConfiguration& config) const { return projectName + " - Win32 " + config.getName().toString(); } void writeProject (OutputStream& out) { - const String defaultConfigName (createConfigName (configs.getReference(0))); + const String defaultConfigName (createConfigName (*getConfiguration(0))); String targetType, targetCode; - if (msvcIsDLL) { targetType = "\"Win32 (x86) Dynamic-Link Library\""; targetCode = "0x0102"; } + if (isLibraryDLL()) { targetType = "\"Win32 (x86) Dynamic-Link Library\""; targetCode = "0x0102"; } else if (projectType.isLibrary()) { targetType = "\"Win32 (x86) Static Library\""; targetCode = "0x0104"; } else if (projectType.isCommandLineApp()) { targetType = "\"Win32 (x86) Console Application\""; targetCode = "0x0103"; } else { targetType = "\"Win32 (x86) Application\""; targetCode = "0x0101"; } @@ -802,9 +884,8 @@ private: << "!MESSAGE Possible choices for configuration are:" << newLine << "!MESSAGE " << newLine; - int i; - for (i = 0; i < configs.size(); ++i) - out << "!MESSAGE \"" << createConfigName (configs.getReference (i)) << "\" (based on " << targetType << ")" << newLine; + for (ConfigIterator i (*this); i.next();) + out << "!MESSAGE \"" << createConfigName (*i) << "\" (based on " << targetType << ")" << newLine; out << "!MESSAGE " << newLine << "# Begin Project" << newLine @@ -817,37 +898,36 @@ private: String targetList; - for (i = 0; i < configs.size(); ++i) + for (ConfigIterator config (*this); config.next();) { - const Project::BuildConfiguration& config = configs.getReference(i); - const String configName (createConfigName (config)); + const String configName (createConfigName (*config)); targetList << "# Name \"" << configName << '"' << newLine; - const String binariesPath (getConfigTargetPath (config)); - const String targetBinary (FileHelpers::windowsStylePath (binariesPath + "/" + getBinaryFileForConfig (config))); - const String optimisationFlag (((int) config.getOptimisationLevel().getValue() <= 1) ? "Od" : (config.getOptimisationLevel() == 2 ? "O2" : "O3")); - const String defines (getPreprocessorDefs (config, " /D ")); - const bool isDebug = (bool) config.isDebug().getValue(); + const String binariesPath (getConfigTargetPath (*config)); + const String targetBinary (FileHelpers::windowsStylePath (binariesPath + "/" + getBinaryFileForConfig (*config))); + const String optimisationFlag (((int) config->getOptimisationLevel().getValue() <= 1) ? "Od" : (config->getOptimisationLevel() == 2 ? "O2" : "O3")); + const String defines (getPreprocessorDefs (*config, " /D ")); + const bool isDebug = (bool) config->isDebug().getValue(); const String extraDebugFlags (isDebug ? "/Gm /ZI /GZ" : ""); - out << (i == 0 ? "!IF" : "!ELSEIF") << " \"$(CFG)\" == \"" << configName << '"' << newLine + out << (config.index == 0 ? "!IF" : "!ELSEIF") << " \"$(CFG)\" == \"" << configName << '"' << newLine << "# PROP BASE Use_MFC 0" << newLine << "# PROP BASE Use_Debug_Libraries " << (isDebug ? "1" : "0") << newLine << "# PROP BASE Output_Dir \"" << binariesPath << '"' << newLine - << "# PROP BASE Intermediate_Dir \"" << getIntermediatesPath (config) << '"' << newLine + << "# PROP BASE Intermediate_Dir \"" << getIntermediatesPath (*config) << '"' << newLine << "# PROP BASE Target_Dir \"\"" << newLine << "# PROP Use_MFC 0" << newLine << "# PROP Use_Debug_Libraries " << (isDebug ? "1" : "0") << newLine << "# PROP Output_Dir \"" << binariesPath << '"' << newLine - << "# PROP Intermediate_Dir \"" << getIntermediatesPath (config) << '"' << newLine + << "# PROP Intermediate_Dir \"" << getIntermediatesPath (*config) << '"' << newLine << "# PROP Ignore_Export_Lib 0" << newLine << "# PROP Target_Dir \"\"" << newLine << "# ADD BASE CPP /nologo /W3 /GX /" << optimisationFlag << " /D " << defines << " /YX /FD /c " << extraDebugFlags << " /Zm1024" << newLine << "# ADD CPP /nologo " << (isDebug ? "/MTd" : "/MT") << " /W3 /GR /GX /" << optimisationFlag - << " /I " << replacePreprocessorTokens (config, getHeaderSearchPaths (config).joinIntoString (" /I ")) + << " /I " << replacePreprocessorTokens (*config, getHeaderSearchPaths (*config).joinIntoString (" /I ")) << " /D " << defines << " /D \"_UNICODE\" /D \"UNICODE\" /FD /c /Zm1024 " << extraDebugFlags - << " " << replacePreprocessorTokens (config, getExtraCompilerFlags().toString()).trim() << newLine; + << " " << replacePreprocessorTokens (*config, getExtraCompilerFlags().toString()).trim() << newLine; if (! isDebug) out << "# SUBTRACT CPP /YX" << newLine; @@ -876,9 +956,9 @@ private: << "kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib " << (isDebug ? " /debug" : "") << " /nologo /machine:I386 /out:\"" << targetBinary << "\" " - << (msvcIsDLL ? "/dll" : (msvcIsWindowsSubsystem ? "/subsystem:windows " - : "/subsystem:console ")) - << replacePreprocessorTokens (config, getExtraLinkerFlags().toString()).trim() << newLine; + << (isLibraryDLL() ? "/dll" : (msvcIsWindowsSubsystem ? "/subsystem:windows " + : "/subsystem:console ")) + << replacePreprocessorTokens (*config, getExtraLinkerFlags().toString()).trim() << newLine; } } @@ -941,34 +1021,14 @@ private: void writeDSWFile (OutputStream& out) { - out << "Microsoft Developer Studio Workspace File, Format Version 6.00 " << newLine; - - if (! project.isUsingWrapperFiles()) - { - out << "Project: \"JUCE\"= ..\\JUCE.dsp - Package Owner=<4>" << newLine - << "Package=<5>" << newLine - << "{{{" << newLine - << "}}}" << newLine - << "Package=<4>" << newLine - << "{{{" << newLine - << "}}}" << newLine; - } - - out << "Project: \"" << projectName << "\" = .\\" << getDSPFile().getFileName() << " - Package Owner=<4>" << newLine + out << "Microsoft Developer Studio Workspace File, Format Version 6.00 " << newLine + << "Project: \"" << projectName << "\" = .\\" << getDSPFile().getFileName() << " - Package Owner=<4>" << newLine << "Package=<5>" << newLine << "{{{" << newLine << "}}}" << newLine << "Package=<4>" << newLine - << "{{{" << newLine; - - if (! project.isUsingWrapperFiles()) - { - out << " Begin Project Dependency" << newLine - << " Project_Dep_Name JUCE" << newLine - << " End Project Dependency" << newLine; - } - - out << "}}}" << newLine + << "{{{" << newLine + << "}}}" << newLine << "Global:" << newLine << "Package=<5>" << newLine << "{{{" << newLine @@ -1011,7 +1071,7 @@ public: if (settings.hasType (getValueTreeTypeName())) return new MSVCProjectExporterVC2010 (project, settings); - return 0; + return nullptr; } //============================================================================== @@ -1033,23 +1093,64 @@ public: { MemoryOutputStream mo; - writeSolutionFile (mo, "11.00", getVCProjFile()); + writeSolutionFile (mo, "11.00", "# Visual Studio 2010", getVCProjFile()); overwriteFileIfDifferentOrThrow (getSLNFile(), mo); } } protected: + //============================================================================== + class VC2010BuildConfiguration : public MSVCBuildConfiguration + { + public: + VC2010BuildConfiguration (Project& project, const ValueTree& settings) + : MSVCBuildConfiguration (project, settings) + { + if (getArchitectureType().toString().isEmpty()) + getArchitectureType() = get32BitArchName(); + } + + //============================================================================== + static const char* get32BitArchName() { return "32-bit"; } + static const char* get64BitArchName() { return "x64"; } + + Value getArchitectureType() const { return getValue (Ids::winArchitecture); } + bool is64Bit() const { return getArchitectureType().toString() == get64BitArchName(); } + + //============================================================================== + void createPropertyEditors (PropertyListBuilder& props) + { + MSVCBuildConfiguration::createPropertyEditors (props); + + const char* const archTypes[] = { get32BitArchName(), get64BitArchName(), nullptr }; + props.add (new ChoicePropertyComponent (getArchitectureType(), "Architecture", + StringArray (archTypes), Array (archTypes))); + } + }; + + BuildConfiguration::Ptr createBuildConfig (const ValueTree& settings) const + { + return new VC2010BuildConfiguration (project, settings); + } + + static bool is64Bit (const BuildConfiguration& config) + { + return dynamic_cast (config).is64Bit(); + } + + //============================================================================== File getVCProjFile() const { return getProjectFile (".vcxproj"); } File getVCProjFiltersFile() const { return getProjectFile (".vcxproj.filters"); } File getSLNFile() const { return getProjectFile (".sln"); } - static String createConfigName (const Project::BuildConfiguration& config) + String createConfigName (const BuildConfiguration& config) const { - return config.getName().toString() + "|Win32"; + return config.getName().toString() + (is64Bit (config) ? "|x64" + : "|Win32"); } - static void setConditionAttribute (XmlElement& xml, const Project::BuildConfiguration& config) + void setConditionAttribute (XmlElement& xml, const BuildConfiguration& config) { xml.setAttribute ("Condition", "'$(Configuration)|$(Platform)'=='" + createConfigName (config) + "'"); } @@ -1065,14 +1166,12 @@ protected: XmlElement* configsGroup = projectXml.createNewChildElement ("ItemGroup"); configsGroup->setAttribute ("Label", "ProjectConfigurations"); - for (int i = 0; i < configs.size(); ++i) + for (ConfigIterator config (*this); config.next();) { - const Project::BuildConfiguration& config = configs.getReference(i); - XmlElement* e = configsGroup->createNewChildElement ("ProjectConfiguration"); - e->setAttribute ("Include", createConfigName (config)); - e->createNewChildElement ("Configuration")->addTextElement (config.getName().toString()); - e->createNewChildElement ("Platform")->addTextElement ("Win32"); + e->setAttribute ("Include", createConfigName (*config)); + e->createNewChildElement ("Configuration")->addTextElement (config->getName().toString()); + e->createNewChildElement ("Platform")->addTextElement (is64Bit (*config) ? "x64" : "Win32"); } } @@ -1087,19 +1186,20 @@ protected: imports->setAttribute ("Project", "$(VCTargetsPath)\\Microsoft.Cpp.Default.props"); } - for (int i = 0; i < configs.size(); ++i) + for (ConfigIterator config (*this); config.next();) { - const Project::BuildConfiguration& config = configs.getReference(i); - XmlElement* e = projectXml.createNewChildElement ("PropertyGroup"); - setConditionAttribute (*e, config); + setConditionAttribute (*e, *config); e->setAttribute ("Label", "Configuration"); e->createNewChildElement ("ConfigurationType")->addTextElement (getProjectType()); e->createNewChildElement ("UseOfMfc")->addTextElement ("false"); e->createNewChildElement ("CharacterSet")->addTextElement ("MultiByte"); - if (! config.isDebug().getValue()) + if (! config->isDebug().getValue()) e->createNewChildElement ("WholeProgramOptimization")->addTextElement ("true"); + + if (is64Bit (*config)) + e->createNewChildElement ("PlatformToolset")->addTextElement ("Windows7.1SDK"); } { @@ -1130,27 +1230,49 @@ protected: XmlElement* props = projectXml.createNewChildElement ("PropertyGroup"); props->createNewChildElement ("_ProjectFileVersion")->addTextElement ("10.0.30319.1"); - for (int i = 0; i < configs.size(); ++i) + for (ConfigIterator i (*this); i.next();) { - const Project::BuildConfiguration& config = configs.getReference(i); + const MSVCBuildConfiguration& config = dynamic_cast (*i); - XmlElement* outdir = props->createNewChildElement ("OutDir"); - setConditionAttribute (*outdir, config); - outdir->addTextElement (getConfigTargetPath (config) + "\\"); + { + XmlElement* outdir = props->createNewChildElement ("OutDir"); + setConditionAttribute (*outdir, config); + outdir->addTextElement (getConfigTargetPath (config) + "\\"); + } - XmlElement* intdir = props->createNewChildElement ("IntDir"); - setConditionAttribute (*intdir, config); - intdir->addTextElement (getConfigTargetPath (config) + "\\"); + { + XmlElement* intdir = props->createNewChildElement ("IntDir"); + setConditionAttribute (*intdir, config); + intdir->addTextElement (getConfigTargetPath (config) + "\\"); + } - XmlElement* name = props->createNewChildElement ("TargetName"); - setConditionAttribute (*name, config); - name->addTextElement (getBinaryFileForConfig (config).upToLastOccurrenceOf (".", false, false)); + { + XmlElement* name = props->createNewChildElement ("TargetName"); + setConditionAttribute (*name, config); + name->addTextElement (getBinaryFileForConfig (config).upToLastOccurrenceOf (".", false, false)); + } + + { + XmlElement* manifest = props->createNewChildElement ("GenerateManifest"); + setConditionAttribute (*manifest, config); + manifest->addTextElement (config.shouldGenerateManifest().getValue() ? "true" : "false"); + } + + const StringArray librarySearchPaths (config.getLibrarySearchPaths()); + + if (librarySearchPaths.size() > 0) + { + XmlElement* libPath = props->createNewChildElement ("LibraryPath"); + setConditionAttribute (*libPath, config); + libPath->addTextElement ("$(LibraryPath);" + librarySearchPaths.joinIntoString (";")); + } } } - for (int i = 0; i < configs.size(); ++i) + for (ConfigIterator i (*this); i.next();) { - const Project::BuildConfiguration& config = configs.getReference(i); + const MSVCBuildConfiguration& config = dynamic_cast (*i); + String binariesPath (getConfigTargetPath (config)); String intermediatesPath (getIntermediatesPath (config)); const bool isDebug = (bool) config.isDebug().getValue(); @@ -1167,7 +1289,6 @@ protected: midl->createNewChildElement ("MkTypLibCompatible")->addTextElement ("true"); midl->createNewChildElement ("SuppressStartupBanner")->addTextElement ("true"); midl->createNewChildElement ("TargetEnvironment")->addTextElement ("Win32"); - //midl->createNewChildElement ("TypeLibraryName")->addTextElement (""); midl->createNewChildElement ("HeaderFileName"); } @@ -1176,7 +1297,8 @@ protected: cl->createNewChildElement ("Optimization")->addTextElement (isDebug ? "Disabled" : "MaxSpeed"); if (isDebug) - cl->createNewChildElement ("DebugInformationFormat")->addTextElement ("EditAndContinue"); + cl->createNewChildElement ("DebugInformationFormat")->addTextElement (is64Bit (config) ? "ProgramDatabase" + : "EditAndContinue"); StringArray includePaths (getHeaderSearchPaths (config)); includePaths.add ("%(AdditionalIncludeDirectories)"); @@ -1189,8 +1311,9 @@ protected: cl->createNewChildElement ("AssemblerListingLocation")->addTextElement (FileHelpers::windowsStylePath (intermediatesPath + "/")); cl->createNewChildElement ("ObjectFileName")->addTextElement (FileHelpers::windowsStylePath (intermediatesPath + "/")); cl->createNewChildElement ("ProgramDataBaseFileName")->addTextElement (FileHelpers::windowsStylePath (intermediatesPath + "/")); - cl->createNewChildElement ("WarningLevel")->addTextElement ("Level4"); + cl->createNewChildElement ("WarningLevel")->addTextElement ("Level" + String (getWarningLevel (config))); cl->createNewChildElement ("SuppressStartupBanner")->addTextElement ("true"); + cl->createNewChildElement ("MultiProcessorCompilation")->addTextElement ("true"); const String extraFlags (replacePreprocessorTokens (config, getExtraCompilerFlags().toString()).trim()); if (extraFlags.isNotEmpty()) @@ -1212,7 +1335,9 @@ protected: link->createNewChildElement ("GenerateDebugInformation")->addTextElement (isDebug ? "true" : "false"); link->createNewChildElement ("ProgramDatabaseFile")->addTextElement (FileHelpers::windowsStylePath (intermediatesPath + "/" + binaryName + ".pdb")); link->createNewChildElement ("SubSystem")->addTextElement (msvcIsWindowsSubsystem ? "Windows" : "Console"); - link->createNewChildElement ("TargetMachine")->addTextElement ("MachineX86"); + + if (! is64Bit (config)) + link->createNewChildElement ("TargetMachine")->addTextElement ("MachineX86"); if (! isDebug) { @@ -1231,6 +1356,16 @@ protected: bsc->createNewChildElement ("SuppressStartupBanner")->addTextElement ("true"); bsc->createNewChildElement ("OutputFile")->addTextElement (FileHelpers::windowsStylePath (intermediatesPath + "/" + binaryName + ".bsc")); } + + if (config.msvcPreBuildCommand.isNotEmpty()) + group->createNewChildElement ("PreBuildEvent") + ->createNewChildElement ("Command") + ->addTextElement (config.msvcPreBuildCommand); + + if (config.msvcPostBuildCommand.isNotEmpty()) + group->createNewChildElement ("PostBuildEvent") + ->createNewChildElement ("Command") + ->addTextElement (config.msvcPostBuildCommand); } { @@ -1271,7 +1406,7 @@ protected: String getProjectType() const { if (projectType.isGUIApplication() || projectType.isCommandLineApp()) return "Application"; - else if (msvcIsDLL) return "DynamicLibrary"; + else if (isLibraryDLL()) return "DynamicLibrary"; else if (projectType.isLibrary()) return "StaticLibrary"; jassertfalse; @@ -1321,8 +1456,8 @@ protected: { const RelativePath path (projectItem.getFile(), getTargetFolder(), RelativePath::buildTargetFolder); - if (path.hasFileExtension (headerFileExtensions) || (path.hasFileExtension ("cpp;cc;c;cxx") && projectItem.shouldBeCompiled())) - addFileToCompile (path, cpps, headers, false, useStdCall); + if (path.hasFileExtension (headerFileExtensions) || (path.hasFileExtension ("cpp;cc;c;cxx"))) + addFileToCompile (path, cpps, headers, ! projectItem.shouldBeCompiled(), useStdCall); } } } @@ -1400,14 +1535,14 @@ protected: XmlElement* iconGroup = filterXml.createNewChildElement ("ItemGroup"); XmlElement* e = iconGroup->createNewChildElement ("None"); e->setAttribute ("Include", ".\\" + iconFile.getFileName()); - e->createNewChildElement ("Filter")->addTextElement (project.getJuceCodeGroupName()); + e->createNewChildElement ("Filter")->addTextElement (ProjectSaver::getJuceCodeGroupName()); } { XmlElement* rcGroup = filterXml.createNewChildElement ("ItemGroup"); XmlElement* e = rcGroup->createNewChildElement ("ResourceCompile"); e->setAttribute ("Include", ".\\" + rcFile.getFileName()); - e->createNewChildElement ("Filter")->addTextElement (project.getJuceCodeGroupName()); + e->createNewChildElement ("Filter")->addTextElement (ProjectSaver::getJuceCodeGroupName()); } } } diff --git a/extras/Introjucer/Source/Project/jucer_ProjectExport_Make.h b/extras/Introjucer/Source/Project Saving/jucer_ProjectExport_Make.h similarity index 80% rename from extras/Introjucer/Source/Project/jucer_ProjectExport_Make.h rename to extras/Introjucer/Source/Project Saving/jucer_ProjectExport_Make.h index 615077b73d..efd241ab8d 100644 --- a/extras/Introjucer/Source/Project/jucer_ProjectExport_Make.h +++ b/extras/Introjucer/Source/Project Saving/jucer_ProjectExport_Make.h @@ -2,7 +2,7 @@ ============================================================================== This file is part of the JUCE library - "Jules' Utility Class Extensions" - Copyright 2004-10 by Raw Material Software Ltd. + Copyright 2004-11 by Raw Material Software Ltd. ------------------------------------------------------------------------------ @@ -69,13 +69,14 @@ public: bool isPossibleForCurrentProject() { return true; } bool usesMMFiles() const { return false; } bool isLinux() const { return true; } + bool canCopeWithDuplicateFiles() { return false; } void launchProject() { // what to do on linux? } - void createPropertyEditors (Array & props) + void createPropertyEditors (PropertyListBuilder& props) { ProjectExporter::createPropertyEditors (props); } @@ -93,6 +94,29 @@ public: overwriteFileIfDifferentOrThrow (getTargetFolder().getChildFile ("Makefile"), mo); } +protected: + //============================================================================== + class MakeBuildConfiguration : public BuildConfiguration + { + public: + MakeBuildConfiguration (Project& project, const ValueTree& settings) + : BuildConfiguration (project, settings) + { + if (getLibrarySearchPath().getValue().isVoid()) + getLibrarySearchPath() = "/usr/X11R6/lib/"; + } + + void createPropertyEditors (PropertyListBuilder& props) + { + createBasicPropertyEditors (props); + } + }; + + BuildConfiguration::Ptr createBuildConfig (const ValueTree& settings) const + { + return new MakeBuildConfiguration (project, settings); + } + private: //============================================================================== void findAllFilesToCompile (const Project::Item& projectItem, Array& results) @@ -109,7 +133,7 @@ private: } } - void writeDefineFlags (OutputStream& out, const Project::BuildConfiguration& config) + void writeDefineFlags (OutputStream& out, const BuildConfiguration& config) { StringPairArray defines; defines.set ("LINUX", "1"); @@ -127,20 +151,21 @@ private: out << createGCCPreprocessorFlags (mergePreprocessorDefs (defines, getAllPreprocessorDefs (config))); } - void writeHeaderPathFlags (OutputStream& out, const Project::BuildConfiguration& config) + void writeHeaderPathFlags (OutputStream& out, const BuildConfiguration& config) { - StringArray headerPaths (config.getHeaderSearchPaths()); - headerPaths.insert (0, "/usr/include/freetype2"); - headerPaths.insert (0, "/usr/include"); + StringArray searchPaths (extraSearchPaths); + searchPaths.addArray (config.getHeaderSearchPaths()); - for (int i = 0; i < libraryModules.size(); ++i) - libraryModules.getUnchecked(i)->addExtraSearchPaths (*this, headerPaths); + searchPaths.insert (0, "/usr/include/freetype2"); + searchPaths.insert (0, "/usr/include"); - for (int i = 0; i < headerPaths.size(); ++i) - out << " -I " << FileHelpers::unixStylePath (replacePreprocessorTokens (config, headerPaths[i])).quoted(); + searchPaths.removeDuplicates (false); + + for (int i = 0; i < searchPaths.size(); ++i) + out << " -I " << addQuotesIfContainsSpaces (FileHelpers::unixStylePath (replacePreprocessorTokens (config, searchPaths[i]))); } - void writeCppFlags (OutputStream& out, const Project::BuildConfiguration& config) + void writeCppFlags (OutputStream& out, const BuildConfiguration& config) { out << " CPPFLAGS := $(DEPFLAGS)"; writeDefineFlags (out, config); @@ -148,28 +173,18 @@ private: out << newLine; } - void writeLinkerFlags (OutputStream& out, const Project::BuildConfiguration& config) + void writeLinkerFlags (OutputStream& out, const BuildConfiguration& config) { out << " LDFLAGS += -L$(BINDIR) -L$(LIBDIR)"; if (makefileIsDLL) out << " -shared"; - { - Array libraryPaths; - libraryPaths.add (RelativePath ("/usr/X11R6/lib/", RelativePath::unknown)); - libraryPaths.add (getJucePathFromTargetFolder().getChildFile ("bin")); + out << config.getGCCLibraryPathFlags(); - for (int i = 0; i < libraryPaths.size(); ++i) - out << " -L" << libraryPaths.getReference(i).toUnixStyle().quoted(); - } - - const char* defaultLibs[] = { "freetype", "pthread", "rt", "X11", "GL", "GLU", "Xinerama", "asound", 0 }; + const char* defaultLibs[] = { "freetype", "pthread", "rt", "X11", "GL", "GLU", "Xinerama", "asound", "Xext", 0 }; StringArray libs (defaultLibs); - if (project.getJuceLinkageMode() == Project::useLinkedJuce) - libs.add ("juce"); - for (int i = 0; i < libs.size(); ++i) out << " -l" << libs[i]; @@ -177,7 +192,7 @@ private: << newLine; } - void writeConfig (OutputStream& out, const Project::BuildConfiguration& config) + void writeConfig (OutputStream& out, const BuildConfiguration& config) { const String buildDirName ("build"); const String intermediatesDirName (buildDirName + "/intermediate/" + config.getName().toString()); @@ -247,12 +262,12 @@ private: void writeMakefile (OutputStream& out, const Array& files) { - out << "# Automatically generated makefile, created by the Jucer" << newLine - << "# Don't edit this file! Your changes will be overwritten when you re-save the Jucer project!" << newLine + out << "# Automatically generated makefile, created by the Introjucer" << newLine + << "# Don't edit this file! Your changes will be overwritten when you re-save the Introjucer project!" << newLine << newLine; out << "ifndef CONFIG" << newLine - << " CONFIG=" << escapeSpaces (configs.getReference(0).getName().toString()) << newLine + << " CONFIG=" << escapeSpaces (getConfiguration(0)->getName().toString()) << newLine << "endif" << newLine << newLine; @@ -265,9 +280,8 @@ private: << "DEPFLAGS := $(if $(word 2, $(TARGET_ARCH)), , -MMD)" << newLine << newLine; - int i; - for (i = 0; i < configs.size(); ++i) - writeConfig (out, configs.getReference(i)); + for (ConfigIterator config (*this); config.next();) + writeConfig (out, *config); writeObjects (out, files); @@ -289,7 +303,7 @@ private: << "\t-@rm -rf $(OBJDIR)" << newLine << newLine; - for (i = 0; i < files.size(); ++i) + for (int i = 0; i < files.size(); ++i) { if (shouldFileBeCompiledByDefault (files.getReference(i))) { diff --git a/extras/Introjucer/Source/Project/jucer_ProjectExport_XCode.h b/extras/Introjucer/Source/Project Saving/jucer_ProjectExport_XCode.h similarity index 73% rename from extras/Introjucer/Source/Project/jucer_ProjectExport_XCode.h rename to extras/Introjucer/Source/Project Saving/jucer_ProjectExport_XCode.h index 9dd10da218..7fd682e2db 100644 --- a/extras/Introjucer/Source/Project/jucer_ProjectExport_XCode.h +++ b/extras/Introjucer/Source/Project Saving/jucer_ProjectExport_XCode.h @@ -2,7 +2,7 @@ ============================================================================== This file is part of the JUCE library - "Jules' Utility Class Extensions" - Copyright 2004-10 by Raw Material Software Ltd. + Copyright 2004-11 by Raw Material Software Ltd. ------------------------------------------------------------------------------ @@ -28,6 +28,19 @@ #include "jucer_ProjectExporter.h" +namespace +{ + const char* const osxVersionDefault = "default"; + const char* const osxVersion10_4 = "10.4 SDK"; + const char* const osxVersion10_5 = "10.5 SDK"; + const char* const osxVersion10_6 = "10.6 SDK"; + + const char* const osxArch_Default = "default"; + const char* const osxArch_Native = "Native"; + const char* const osxArch_32BitUniversal = "32BitUniversal"; + const char* const osxArch_64BitUniversal = "64BitUniversal"; + const char* const osxArch_64Bit = "64BitIntel"; +} //============================================================================== class XCodeProjectExporter : public ProjectExporter @@ -36,19 +49,17 @@ public: //============================================================================== static const char* getNameMac() { return "XCode (MacOSX)"; } static const char* getNameiOS() { return "XCode (iOS)"; } - static const char* getValueTreeTypeName (bool iPhone) { return iPhone ? "XCODE_IPHONE" : "XCODE_MAC"; } + static const char* getValueTreeTypeName (bool iOS) { return iOS ? "XCODE_IPHONE" : "XCODE_MAC"; } //============================================================================== - XCodeProjectExporter (Project& project_, const ValueTree& settings_, const bool iPhone_) + XCodeProjectExporter (Project& project_, const ValueTree& settings_, const bool iOS_) : ProjectExporter (project_, settings_), - iPhone (iPhone_) + iOS (iOS_) { - name = iPhone ? getNameiOS() : getNameMac(); - - projectIDSalt = hashCode64 (project.getProjectUID()); + name = iOS ? getNameiOS() : getNameMac(); if (getTargetLocation().toString().isEmpty()) - getTargetLocation() = getDefaultBuildsRootFolder() + (iPhone ? "iOS" : "MacOSX"); + getTargetLocation() = getDefaultBuildsRootFolder() + (iOS ? "iOS" : "MacOSX"); if (getSettings() ["objCExtraSuffix"].isVoid()) getObjCSuffix() = createAlphaNumericUID(); @@ -66,11 +77,12 @@ public: //============================================================================== Value getObjCSuffix() { return getSetting ("objCExtraSuffix"); } + Value getPListToMerge() { return getSetting ("customPList"); } int getLaunchPreferenceOrderForCurrentOS() { #if JUCE_MAC - return iPhone ? 1 : 2; + return iOS ? 1 : 2; #else return 0; #endif @@ -85,31 +97,39 @@ public: #endif } - bool isPossibleForCurrentProject() { return projectType.isGUIApplication() || ! iPhone; } + bool isPossibleForCurrentProject() { return projectType.isGUIApplication() || ! iOS; } bool usesMMFiles() const { return true; } bool isXcode() const { return true; } + bool isOSX() const { return ! iOS; } + bool canCopeWithDuplicateFiles() { return true; } - void createPropertyEditors (Array & props) + void createPropertyEditors (PropertyListBuilder& props) { ProjectExporter::createPropertyEditors (props); - props.add (new TextPropertyComponent (getObjCSuffix(), "Objective-C class name suffix", 64, false)); - props.getLast()->setTooltip ("Because objective-C linkage is done by string-matching, you can get horrible linkage mix-ups when different modules containing the " - "same class-names are loaded simultaneously. This setting lets you provide a unique string that will be used in naming the obj-C classes in your executable to avoid this."); + props.add (new TextPropertyComponent (getObjCSuffix(), "Objective-C class name suffix", 64, false), + "Because objective-C linkage is done by string-matching, you can get horrible linkage mix-ups when different modules containing the " + "same class-names are loaded simultaneously. This setting lets you provide a unique string that will be used in naming " + "the obj-C classes in your executable to avoid this."); - if (projectType.isGUIApplication() && ! iPhone) + if (projectType.isGUIApplication() && ! iOS) { - props.add (new TextPropertyComponent (getSetting ("documentExtensions"), "Document file extensions", 128, false)); - props.getLast()->setTooltip ("A comma-separated list of file extensions for documents that your app can open."); + props.add (new TextPropertyComponent (getSetting ("documentExtensions"), "Document file extensions", 128, false), + "A comma-separated list of file extensions for documents that your app can open."); } - else if (iPhone) + else if (iOS) { - props.add (new BooleanPropertyComponent (getSetting ("UIFileSharingEnabled"), "File Sharing Enabled", "Enabled")); - props.getLast()->setTooltip ("Enable this to expose your app's files to iTunes."); + props.add (new BooleanPropertyComponent (getSetting ("UIFileSharingEnabled"), "File Sharing Enabled", "Enabled"), + "Enable this to expose your app's files to iTunes."); - props.add (new BooleanPropertyComponent (getSetting ("UIStatusBarHidden"), "Status Bar Hidden", "Enabled")); - props.getLast()->setTooltip ("Enable this to disable the status bar in your app."); + props.add (new BooleanPropertyComponent (getSetting ("UIStatusBarHidden"), "Status Bar Hidden", "Enabled"), + "Enable this to disable the status bar in your app."); } + + props.add (new TextPropertyComponent (getPListToMerge(), "Custom PList", 8192, true), + "You can paste the contents of an XML PList file in here, and the settings that it contains will override any " + "settings that the Introjucer creates. BEWARE! When doing this, be careful to remove from the XML any " + "values that you DO want the introjucer to change!"); } void launchProject() @@ -140,13 +160,61 @@ public: writeInfoPlistFile(); } +protected: + //============================================================================== + class XcodeBuildConfiguration : public BuildConfiguration + { + public: + XcodeBuildConfiguration (Project& project, const ValueTree& settings) + : BuildConfiguration (project, settings) + { + } + + Value getMacSDKVersion() const { return getValue (Ids::osxSDK); } + Value getMacCompatibilityVersion() const { return getValue (Ids::osxCompatibility); } + Value getMacArchitecture() const { return getValue (Ids::osxArchitecture); } + + void createPropertyEditors (PropertyListBuilder& props) + { + createBasicPropertyEditors (props); + + if (getMacSDKVersion().toString().isEmpty()) + getMacSDKVersion() = osxVersionDefault; + + const char* osxVersions[] = { "Use Default", osxVersion10_4, osxVersion10_5, osxVersion10_6, 0 }; + const char* osxVersionValues[] = { osxVersionDefault, osxVersion10_4, osxVersion10_5, osxVersion10_6, 0 }; + + props.add (new ChoicePropertyComponent (getMacSDKVersion(), "OSX Base SDK Version", StringArray (osxVersions), Array (osxVersionValues)), + "The version of OSX to link against in the XCode build."); + + if (getMacCompatibilityVersion().toString().isEmpty()) + getMacCompatibilityVersion() = osxVersionDefault; + + props.add (new ChoicePropertyComponent (getMacCompatibilityVersion(), "OSX Compatibility Version", StringArray (osxVersions), Array (osxVersionValues)), + "The minimum version of OSX that the target binary will be compatible with."); + + const char* osxArch[] = { "Use Default", "Native architecture of build machine", "Universal Binary (32-bit)", "Universal Binary (64-bit)", "64-bit Intel", 0 }; + const char* osxArchValues[] = { osxArch_Default, osxArch_Native, osxArch_32BitUniversal, osxArch_64BitUniversal, osxArch_64Bit, 0 }; + + if (getMacArchitecture().toString().isEmpty()) + getMacArchitecture() = osxArch_Default; + + props.add (new ChoicePropertyComponent (getMacArchitecture(), "OSX Architecture", StringArray (osxArch), Array (osxArchValues)), + "The type of OSX binary that will be produced."); + } + }; + + BuildConfiguration::Ptr createBuildConfig (const ValueTree& settings) const + { + return new XcodeBuildConfiguration (project, settings); + } + private: OwnedArray pbxBuildFiles, pbxFileReferences, pbxGroups, misc, projectConfigs, targetConfigs; StringArray buildPhaseIDs, resourceIDs, sourceIDs, frameworkIDs; StringArray frameworkFileIDs, rezFileIDs, resourceFileRefs; File infoPlistFile, iconFile; - int64 projectIDSalt; - const bool iPhone; + const bool iOS; static String sanitisePath (const String& path) { @@ -168,7 +236,7 @@ private: { RelativePath plistPath (infoPlistFile, getTargetFolder(), RelativePath::buildTargetFolder); addFileReference (plistPath.toUnixStyle()); - resourceFileRefs.add (createID (plistPath)); + resourceFileRefs.add (createFileRefID (plistPath)); } if (iconFile.exists()) @@ -176,7 +244,7 @@ private: RelativePath iconPath (iconFile, getTargetFolder(), RelativePath::buildTargetFolder); addFileReference (iconPath.toUnixStyle()); resourceIDs.add (addBuildFile (iconPath, false, false)); - resourceFileRefs.add (createID (iconPath)); + resourceFileRefs.add (createFileRefID (iconPath)); } { @@ -209,12 +277,10 @@ private: addGroup (createID ("__mainsourcegroup"), "Source", topLevelGroupIDs); } - for (int i = 0; i < configs.size(); ++i) + for (ConfigIterator config (*this); config.next();) { - const Project::BuildConfiguration& config = configs.getReference(i); - - addProjectConfig (config.getName().getValue(), getProjectSettings (config)); - addTargetConfig (config.getName().getValue(), getTargetSettings (config)); + addProjectConfig (config->getName().getValue(), getProjectSettings (*config)); + addTargetConfig (config->getName().getValue(), getTargetSettings (dynamic_cast (*config))); } addConfigList (projectConfigs, createID ("__projList")); @@ -245,7 +311,7 @@ private: if (w != h || (w != 16 && w != 32 && w != 48 && w != 64)) { const int newSize = w >= 128 ? 128 : (w >= 64 ? 64 : (w >= 32 ? 32 : 16)); - Image newIm (Image::ARGB, newSize, newSize, true, Image::SoftwareImage); + Image newIm (Image::ARGB, newSize, newSize, true, SoftwareImageType()); Graphics g (newIm); g.drawImageWithin (image, 0, 0, newSize, newSize, RectanglePlacement::centred | RectanglePlacement::onlyReduceInSize, false); @@ -322,11 +388,11 @@ private: { Array images; - Image bigIcon (project.getBigIcon()); + Image bigIcon (getBigIcon()); if (bigIcon.isValid()) images.add (bigIcon); - Image smallIcon (project.getSmallIcon()); + Image smallIcon (getSmallIcon()); if (smallIcon.isValid()) images.add (smallIcon); @@ -345,10 +411,17 @@ private: if (! xcodeCreatePList) return; - XmlElement plist ("plist"); - XmlElement* dict = plist.createNewChildElement ("dict"); + ScopedPointer plist (XmlDocument::parse (getPListToMerge().toString())); - if (iPhone) + if (plist == nullptr || ! plist->hasTagName ("plist")) + plist = new XmlElement ("plist"); + + XmlElement* dict = plist->getChildByName ("dict"); + + if (dict == nullptr) + dict = plist->createNewChildElement ("dict"); + + if (iOS) addPlistDictionaryKeyBool (dict, "LSRequiresIPhoneOS", true); addPlistDictionaryKey (dict, "CFBundleExecutable", "${EXECUTABLE_NAME}"); @@ -391,19 +464,20 @@ private: if (getSetting ("UIStatusBarHidden").getValue()) addPlistDictionaryKeyBool (dict, "UIStatusBarHidden", true); + for (int i = 0; i < xcodeExtraPListEntries.size(); ++i) + dict->addChildElement (new XmlElement (xcodeExtraPListEntries.getReference(i))); + MemoryOutputStream mo; - plist.writeToStream (mo, ""); + plist->writeToStream (mo, ""); overwriteFileIfDifferentOrThrow (infoPlistFile, mo); } - StringArray getHeaderSearchPaths (const Project::BuildConfiguration& config) + StringArray getHeaderSearchPaths (const BuildConfiguration& config) { - StringArray searchPaths (config.getHeaderSearchPaths()); - - for (int i = 0; i < libraryModules.size(); ++i) - libraryModules.getUnchecked(i)->addExtraSearchPaths (*this, searchPaths); - + StringArray searchPaths (extraSearchPaths); + searchPaths.addArray (config.getHeaderSearchPaths()); + searchPaths.removeDuplicates (false); return searchPaths; } @@ -420,7 +494,7 @@ private: librarySearchPaths.add (sanitisePath (searchPath)); } - void getLinkerFlags (const Project::BuildConfiguration& config, StringArray& flags, StringArray& librarySearchPaths) + void getLinkerFlags (const BuildConfiguration& config, StringArray& flags, StringArray& librarySearchPaths) { if (xcodeIsBundle) flags.add ("-bundle"); @@ -431,18 +505,11 @@ private: for (int i = 0; i < extraLibs.size(); ++i) getLinkerFlagsForStaticLibrary (extraLibs.getReference(i), flags, librarySearchPaths); - if (project.getJuceLinkageMode() == Project::useLinkedJuce) - { - RelativePath juceLib (getJucePathFromTargetFolder().getChildFile (config.isDebug().getValue() ? "bin/libjucedebug.a" - : "bin/libjuce.a")); - getLinkerFlagsForStaticLibrary (juceLib, flags, librarySearchPaths); - } - flags.add (replacePreprocessorTokens (config, getExtraLinkerFlags().toString())); flags.removeEmptyStrings (true); } - StringArray getProjectSettings (const Project::BuildConfiguration& config) + StringArray getProjectSettings (const BuildConfiguration& config) { StringArray s; s.add ("ALWAYS_SEARCH_USER_PATHS = NO"); @@ -456,7 +523,7 @@ private: s.add ("WARNING_CFLAGS = -Wreorder"); s.add ("GCC_MODEL_TUNING = G5"); - if (projectType.isLibrary() || project.getJuceLinkageMode() == Project::useLinkedJuce) + if (projectType.isLibrary()) { s.add ("GCC_INLINES_ARE_PRIVATE_EXTERN = NO"); s.add ("GCC_SYMBOLS_PRIVATE_EXTERN = NO"); @@ -466,7 +533,7 @@ private: s.add ("GCC_INLINES_ARE_PRIVATE_EXTERN = YES"); } - if (iPhone) + if (iOS) { s.add ("\"CODE_SIGN_IDENTITY[sdk=iphoneos*]\" = \"iPhone Developer\""); s.add ("SDKROOT = iphoneos"); @@ -482,24 +549,23 @@ private: return s; } - StringArray getTargetSettings (const Project::BuildConfiguration& config) + StringArray getTargetSettings (const XcodeBuildConfiguration& config) { StringArray s; const String arch (config.getMacArchitecture().toString()); - if (arch == Project::BuildConfiguration::osxArch_Native) s.add ("ARCHS = \"$(ARCHS_NATIVE)\""); - else if (arch == Project::BuildConfiguration::osxArch_32BitUniversal) s.add ("ARCHS = \"$(ARCHS_STANDARD_32_BIT)\""); - else if (arch == Project::BuildConfiguration::osxArch_64BitUniversal) s.add ("ARCHS = \"$(ARCHS_STANDARD_32_64_BIT)\""); - else if (arch == Project::BuildConfiguration::osxArch_64Bit) s.add ("ARCHS = \"$(ARCHS_STANDARD_64_BIT)\""); + if (arch == osxArch_Native) s.add ("ARCHS = \"$(ARCHS_NATIVE)\""); + else if (arch == osxArch_32BitUniversal) s.add ("ARCHS = \"$(ARCHS_STANDARD_32_BIT)\""); + else if (arch == osxArch_64BitUniversal) s.add ("ARCHS = \"$(ARCHS_STANDARD_32_64_BIT)\""); + else if (arch == osxArch_64Bit) s.add ("ARCHS = \"$(ARCHS_STANDARD_64_BIT)\""); - s.add ("PREBINDING = NO"); s.add ("HEADER_SEARCH_PATHS = \"" + replacePreprocessorTokens (config, getHeaderSearchPaths (config).joinIntoString (" ")) + " $(inherited)\""); s.add ("GCC_OPTIMIZATION_LEVEL = " + config.getGCCOptimisationFlag()); s.add ("INFOPLIST_FILE = " + infoPlistFile.getFileName()); const String extraFlags (replacePreprocessorTokens (config, getExtraCompilerFlags().toString()).trim()); if (extraFlags.isNotEmpty()) - s.add ("OTHER_CPLUSPLUSFLAGS = " + extraFlags); + s.add ("OTHER_CPLUSPLUSFLAGS = \"" + extraFlags + "\""); if (xcodeProductInstallPath.isNotEmpty()) s.add ("INSTALL_PATH = \"" + xcodeProductInstallPath + "\""); @@ -529,32 +595,37 @@ private: s.add ("DEPLOYMENT_LOCATION = YES"); } - if (! iPhone) + String gccVersion ("com.apple.compilers.llvm.clang.1_0"); + + if (! iOS) { const String sdk (config.getMacSDKVersion().toString()); const String sdkCompat (config.getMacCompatibilityVersion().toString()); - if (sdk == Project::BuildConfiguration::osxVersion10_4) + if (sdk == osxVersion10_4) { s.add ("SDKROOT = macosx10.4"); - s.add ("GCC_VERSION = 4.0"); + gccVersion = "4.0"; } - else if (sdk == Project::BuildConfiguration::osxVersion10_5) + else if (sdk == osxVersion10_5) { s.add ("SDKROOT = macosx10.5"); } - else if (sdk == Project::BuildConfiguration::osxVersion10_6) + else if (sdk == osxVersion10_6) { s.add ("SDKROOT = macosx10.6"); } - if (sdkCompat == Project::BuildConfiguration::osxVersion10_4) s.add ("MACOSX_DEPLOYMENT_TARGET = 10.4"); - else if (sdkCompat == Project::BuildConfiguration::osxVersion10_5) s.add ("MACOSX_DEPLOYMENT_TARGET = 10.5"); - else if (sdkCompat == Project::BuildConfiguration::osxVersion10_6) s.add ("MACOSX_DEPLOYMENT_TARGET = 10.6"); + if (sdkCompat == osxVersion10_4) s.add ("MACOSX_DEPLOYMENT_TARGET = 10.4"); + else if (sdkCompat == osxVersion10_5) s.add ("MACOSX_DEPLOYMENT_TARGET = 10.5"); + else if (sdkCompat == osxVersion10_6) s.add ("MACOSX_DEPLOYMENT_TARGET = 10.6"); s.add ("MACOSX_DEPLOYMENT_TARGET_ppc = 10.4"); } + s.add ("GCC_VERSION = " + gccVersion); + s.add ("CLANG_CXX_LANGUAGE_STANDARD = \"c++0x\""); + { StringArray linkerFlags, librarySearchPaths; getLinkerFlags (config, linkerFlags, librarySearchPaths); @@ -562,6 +633,9 @@ private: if (linkerFlags.size() > 0) s.add ("OTHER_LDFLAGS = \"" + linkerFlags.joinIntoString (" ") + "\""); + librarySearchPaths.addArray (config.getLibrarySearchPaths()); + librarySearchPaths.removeDuplicates (false); + if (librarySearchPaths.size() > 0) { String libPaths ("LIBRARY_SEARCH_PATHS = (\"$(inherited)\""); @@ -582,7 +656,6 @@ private: s.add ("ONLY_ACTIVE_ARCH = YES"); s.add ("COPY_PHASE_STRIP = NO"); s.add ("GCC_DYNAMIC_NO_PIC = NO"); - s.add ("GCC_ENABLE_FIX_AND_CONTINUE = NO"); } else { @@ -624,10 +697,7 @@ private: if (! projectType.isLibrary()) { StringArray s (xcodeFrameworks); - - s.addTokens (iPhone ? "UIKit Foundation CoreGraphics CoreText AudioToolbox QuartzCore OpenGLES" - : "Cocoa Carbon IOKit CoreAudio CoreMIDI WebKit DiscRecording OpenGL QuartzCore QTKit QuickTime AudioToolbox", false); - + s.trim(); s.removeDuplicates (true); s.sort (true); @@ -642,7 +712,7 @@ private: output << "// !$*UTF8*$!\n{\n" "\tarchiveVersion = 1;\n" "\tclasses = {\n\t};\n" - "\tobjectVersion = 45;\n" + "\tobjectVersion = 46;\n" "\tobjects = {\n\n"; Array objects; @@ -679,7 +749,24 @@ private: static void addPlistDictionaryKey (XmlElement* xml, const String& key, const String& value) { - xml->createNewChildElement ("key")->addTextElement (key); + forEachXmlChildElementWithTagName (*xml, e, "key") + { + if (e->getAllSubText().trim().equalsIgnoreCase (key)) + { + if (e->getNextElement() != nullptr && e->getNextElement()->hasTagName ("key")) + { + // try to fix broken plist format.. + xml->removeChildElement (e, true); + break; + } + else + { + return; // (value already exists) + } + } + } + + xml->createNewChildElement ("key") ->addTextElement (key); xml->createNewChildElement ("string")->addTextElement (value); } @@ -709,7 +796,7 @@ private: String addBuildFile (const RelativePath& path, bool addToSourceBuildPhase, bool inhibitWarnings) { - return addBuildFile (path.toUnixStyle(), createID (path), addToSourceBuildPhase, inhibitWarnings); + return addBuildFile (path.toUnixStyle(), createFileRefID (path), addToSourceBuildPhase, inhibitWarnings); } String addFileReference (String pathString) @@ -727,19 +814,37 @@ private: sourceTree = ""; } - const String fileRefID (createID (pathString)); + const String fileRefID (createFileRefID (pathString)); - ValueTree* v = new ValueTree (fileRefID); + ScopedPointer v (new ValueTree (fileRefID)); v->setProperty ("isa", "PBXFileReference", 0); v->setProperty ("lastKnownFileType", getFileType (path), 0); v->setProperty (Ids::name, pathString.fromLastOccurrenceOf ("/", false, false), 0); v->setProperty ("path", sanitisePath (pathString), 0); v->setProperty ("sourceTree", sourceTree, 0); - pbxFileReferences.add (v); + + const int existing = pbxFileReferences.indexOfSorted (*this, v); + + if (existing >= 0) + { + // If this fails, there's either a string hash collision, or the same file is being added twice (incorrectly) + jassert (pbxFileReferences.getUnchecked (existing)->isEquivalentTo (*v)); + } + else + { + pbxFileReferences.addSorted (*this, v.release()); + } return fileRefID; } +public: + static int compareElements (const ValueTree* first, const ValueTree* second) + { + return first->getType().toString().compare (second->getType().toString()); + } + +private: static String getFileType (const RelativePath& file) { if (file.hasFileExtension ("cpp;cc;cxx")) return "sourcecode.cpp.cpp"; @@ -750,6 +855,7 @@ private: else if (file.hasFileExtension (".jpeg;.jpg")) return "image.jpeg"; else if (file.hasFileExtension ("png;gif")) return "image" + file.getFileExtension(); else if (file.hasFileExtension ("html;htm")) return "text.html"; + else if (file.hasFileExtension ("xml;zip;wav")) return "file" + file.getFileExtension(); else if (file.hasFileExtension ("txt;rtf")) return "text" + file.getFileExtension(); else if (file.hasFileExtension ("plist")) return "text.plist.xml"; else if (file.hasFileExtension ("app")) return "wrapper.application"; @@ -762,15 +868,18 @@ private: String addFile (const RelativePath& path, bool shouldBeCompiled, bool inhibitWarnings) { + const String pathAsString (path.toUnixStyle()); + const String refID (addFileReference (path.toUnixStyle())); + if (shouldBeCompiled) { if (path.hasFileExtension (".r")) - rezFileIDs.add (addBuildFile (path, false, inhibitWarnings)); + rezFileIDs.add (addBuildFile (pathAsString, refID, false, inhibitWarnings)); else - addBuildFile (path, true, inhibitWarnings); + addBuildFile (pathAsString, refID, true, inhibitWarnings); } - return addFileReference (path.toUnixStyle()); + return refID; } String addProjectItem (const Project::Item& projectItem) @@ -814,7 +923,7 @@ private: void addFramework (const String& frameworkName) { const String path ("System/Library/Frameworks/" + frameworkName + ".framework"); - const String fileRefID (createID (path)); + const String fileRefID (createFileRefID (path)); addFileReference ("${SDKROOT}/" + path); frameworkIDs.add (addBuildFile (path, fileRefID, false, false)); frameworkFileIDs.add (fileRefID); @@ -842,7 +951,7 @@ private: { jassert (xcodeFileType.isNotEmpty()); jassert (xcodeBundleExtension.isEmpty() || xcodeBundleExtension.startsWithChar('.')); - String productName (configs.getReference(0).getTargetBinaryName().toString()); + String productName (getConfiguration(0)->getTargetBinaryName().toString()); if (xcodeFileType == "archive.ar") productName = getLibbedFilename (productName); @@ -939,7 +1048,7 @@ private: ValueTree* const v = new ValueTree (createID ("__root")); v->setProperty ("isa", "PBXProject", 0); v->setProperty ("buildConfigurationList", createID ("__projList"), 0); - v->setProperty ("compatibilityVersion", "Xcode 3.1", 0); + v->setProperty ("compatibilityVersion", "Xcode 3.2", 0); v->setProperty ("hasScannedForEncodings", (int) 0, 0); v->setProperty ("mainGroup", createID ("__mainsourcegroup"), 0); v->setProperty ("projectDirPath", "\"\"", 0); @@ -972,24 +1081,24 @@ private: + (separator == ";" ? separator : String::empty); } - String createID (const RelativePath& path) const - { - return createID (path.toUnixStyle()); - } - String createID (String rootString) const { if (rootString.startsWith ("${")) rootString = rootString.fromFirstOccurrenceOf ("}/", false, false); - static const char digits[] = "0123456789ABCDEF"; - char n[24]; - Random ran (projectIDSalt + hashCode64 (rootString)); + rootString += project.getProjectUID(); - for (int i = 0; i < numElementsInArray (n); ++i) - n[i] = digits [ran.nextInt() & 15]; + return MD5 (rootString.toUTF8()).toHexString().substring (0, 24).toUpperCase(); + } - return String (n, numElementsInArray (n)); + String createFileRefID (const RelativePath& path) const + { + return createFileRefID (path.toUnixStyle()); + } + + String createFileRefID (const String& path) const + { + return createID ("__fileref_" + path); } String getIDForGroup (const Project::Item& item) const diff --git a/extras/Introjucer/Source/Project Saving/jucer_ProjectExporter.cpp b/extras/Introjucer/Source/Project Saving/jucer_ProjectExporter.cpp new file mode 100644 index 0000000000..bbddcffbe8 --- /dev/null +++ b/extras/Introjucer/Source/Project Saving/jucer_ProjectExporter.cpp @@ -0,0 +1,524 @@ +/* + ============================================================================== + + This file is part of the JUCE library - "Jules' Utility Class Extensions" + Copyright 2004-11 by Raw Material Software Ltd. + + ------------------------------------------------------------------------------ + + JUCE can be redistributed and/or modified under the terms of the GNU General + Public License (Version 2), as published by the Free Software Foundation. + A copy of the license is included in the JUCE distribution, or can be found + online at www.gnu.org/licenses. + + JUCE is distributed in the hope that it will be useful, but WITHOUT ANY + WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR + A PARTICULAR PURPOSE. See the GNU General Public License for more details. + + ------------------------------------------------------------------------------ + + To release a closed-source product which uses JUCE, commercial licenses are + available: visit www.rawmaterialsoftware.com/juce for more information. + + ============================================================================== +*/ + +#include "jucer_ProjectExporter.h" +#include "jucer_ProjectExport_Make.h" +#include "jucer_ProjectExport_MSVC.h" +#include "jucer_ProjectExport_XCode.h" +#include "jucer_ProjectExport_Android.h" + + +//============================================================================== +int ProjectExporter::getNumExporters() +{ + return 6; +} + +StringArray ProjectExporter::getExporterNames() +{ + StringArray s; + s.add (XCodeProjectExporter::getNameMac()); + s.add (XCodeProjectExporter::getNameiOS()); + s.add (MSVCProjectExporterVC6::getName()); + s.add (MSVCProjectExporterVC2005::getName()); + s.add (MSVCProjectExporterVC2008::getName()); + s.add (MSVCProjectExporterVC2010::getName()); + s.add (MakefileProjectExporter::getNameLinux()); + s.add (AndroidProjectExporter::getNameAndroid()); + return s; +} + +StringArray ProjectExporter::getDefaultExporters() +{ + StringArray s; + s.add (XCodeProjectExporter::getNameMac()); + s.add (MSVCProjectExporterVC2008::getName()); + s.add (MSVCProjectExporterVC2010::getName()); + s.add (MakefileProjectExporter::getNameLinux()); + return s; +} + +ProjectExporter* ProjectExporter::createNewExporter (Project& project, const int index) +{ + ProjectExporter* exp = nullptr; + + switch (index) + { + case 0: exp = new XCodeProjectExporter (project, ValueTree (XCodeProjectExporter ::getValueTreeTypeName (false)), false); break; + case 1: exp = new XCodeProjectExporter (project, ValueTree (XCodeProjectExporter ::getValueTreeTypeName (true)), true); break; + case 2: exp = new MSVCProjectExporterVC6 (project, ValueTree (MSVCProjectExporterVC6 ::getValueTreeTypeName())); break; + case 3: exp = new MSVCProjectExporterVC2005 (project, ValueTree (MSVCProjectExporterVC2005::getValueTreeTypeName())); break; + case 4: exp = new MSVCProjectExporterVC2008 (project, ValueTree (MSVCProjectExporterVC2008::getValueTreeTypeName())); break; + case 5: exp = new MSVCProjectExporterVC2010 (project, ValueTree (MSVCProjectExporterVC2010::getValueTreeTypeName())); break; + case 6: exp = new MakefileProjectExporter (project, ValueTree (MakefileProjectExporter ::getValueTreeTypeName())); break; + case 7: exp = new AndroidProjectExporter (project, ValueTree (AndroidProjectExporter ::getValueTreeTypeName())); break; + default: jassertfalse; return 0; + } + + File juceFolder (ModuleList::getLocalModulesFolder (&project)); + File target (exp->getTargetFolder()); + + if (FileHelpers::shouldPathsBeRelative (juceFolder.getFullPathName(), project.getFile().getFullPathName())) + exp->getJuceFolder() = juceFolder.getRelativePathFrom (project.getFile().getParentDirectory()); + else + exp->getJuceFolder() = juceFolder.getFullPathName(); + + exp->createDefaultConfigs(); + + return exp; +} + +ProjectExporter* ProjectExporter::createNewExporter (Project& project, const String& name) +{ + return createNewExporter (project, getExporterNames().indexOf (name)); +} + +ProjectExporter* ProjectExporter::createExporter (Project& project, const ValueTree& settings) +{ + ProjectExporter* exp = MSVCProjectExporterVC6 ::createForSettings (project, settings); + if (exp == nullptr) exp = MSVCProjectExporterVC2005::createForSettings (project, settings); + if (exp == nullptr) exp = MSVCProjectExporterVC2008::createForSettings (project, settings); + if (exp == nullptr) exp = MSVCProjectExporterVC2010::createForSettings (project, settings); + if (exp == nullptr) exp = XCodeProjectExporter ::createForSettings (project, settings); + if (exp == nullptr) exp = MakefileProjectExporter ::createForSettings (project, settings); + if (exp == nullptr) exp = AndroidProjectExporter ::createForSettings (project, settings); + + jassert (exp != nullptr); + return exp; +} + +ProjectExporter* ProjectExporter::createPlatformDefaultExporter (Project& project) +{ + ScopedPointer best; + int bestPref = 0; + + for (Project::ExporterIterator exporter (project); exporter.next();) + { + const int pref = exporter->getLaunchPreferenceOrderForCurrentOS(); + + if (pref > bestPref) + { + bestPref = pref; + best = exporter.exporter; + } + } + + return best.release(); +} + +//============================================================================== +ProjectExporter::ProjectExporter (Project& project_, const ValueTree& settings_) + : xcodeIsBundle (false), + xcodeCreatePList (false), + xcodeCanUseDwarf (true), + makefileIsDLL (false), + msvcIsDLL (false), + msvcIsWindowsSubsystem (true), + msvcNeedsDLLRuntimeLib (false), + settings (settings_), + project (project_), + projectType (project_.getProjectType()), + projectName (project_.getProjectName().toString()), + projectFolder (project_.getFile().getParentDirectory()), + modulesGroup (nullptr) +{ + groups.add (project.getMainGroup().createCopy()); +} + +ProjectExporter::~ProjectExporter() +{ +} + +File ProjectExporter::getTargetFolder() const +{ + return project.resolveFilename (getTargetLocation().toString()); +} + +String ProjectExporter::getIncludePathForFileInJuceFolder (const String& pathFromJuceFolder, const File& targetIncludeFile) const +{ + String juceFolderPath (getJuceFolder().toString()); + + if (juceFolderPath.startsWithChar ('<')) + { + juceFolderPath = FileHelpers::unixStylePath (File::addTrailingSeparator (juceFolderPath.substring (1).dropLastCharacters(1))); + if (juceFolderPath == "/") + juceFolderPath = String::empty; + + return "<" + juceFolderPath + pathFromJuceFolder + ">"; + } + else + { + const RelativePath juceFromProject (juceFolderPath, RelativePath::projectFolder); + const RelativePath fileFromProject (juceFromProject.getChildFile (pathFromJuceFolder)); + const RelativePath fileFromHere (fileFromProject.rebased (project.getFile().getParentDirectory(), + targetIncludeFile.getParentDirectory(), RelativePath::unknown)); + return fileFromHere.toUnixStyle().quoted(); + } +} + +RelativePath ProjectExporter::getJucePathFromProjectFolder() const +{ + return RelativePath (getJuceFolder().toString(), RelativePath::projectFolder); +} + +RelativePath ProjectExporter::getJucePathFromTargetFolder() const +{ + return rebaseFromProjectFolderToBuildTarget (getJucePathFromProjectFolder()); +} + +RelativePath ProjectExporter::rebaseFromProjectFolderToBuildTarget (const RelativePath& path) const +{ + return path.rebased (project.getFile().getParentDirectory(), getTargetFolder(), RelativePath::buildTargetFolder); +} + +bool ProjectExporter::shouldFileBeCompiledByDefault (const RelativePath& file) const +{ + return file.hasFileExtension ("cpp;cc;c;cxx"); +} + +void ProjectExporter::createPropertyEditors (PropertyListBuilder& props) +{ + props.add (new TextPropertyComponent (getTargetLocation(), "Target Project Folder", 1024, false), + "The location of the folder in which the " + name + " project will be created. This path can be absolute, but it's much more sensible to make it relative to the jucer project directory."); + + props.add (new TextPropertyComponent (getJuceFolder(), "Local JUCE folder", 1024, false), + "The location of the Juce library folder that the " + name + " project will use to when compiling. This can be an absolute path, or relative to the jucer project folder, but it must be valid on the filesystem of the machine you use to actually do the compiling."); + + OwnedArray modules; + ModuleList moduleList; + moduleList.rescan (ModuleList::getDefaultModulesFolder (&project)); + project.createRequiredModules (moduleList, modules); + for (int i = 0; i < modules.size(); ++i) + modules.getUnchecked(i)->createPropertyEditors (*this, props); + + props.add (new TextPropertyComponent (getExporterPreprocessorDefs(), "Extra Preprocessor Definitions", 32768, false), + "Extra preprocessor definitions. Use the form \"NAME1=value NAME2=value\", using whitespace or commas to separate the items - to include a space or comma in a definition, precede it with a backslash."); + + props.add (new TextPropertyComponent (getExtraCompilerFlags(), "Extra compiler flags", 2048, false), + "Extra command-line flags to be passed to the compiler. This string can contain references to preprocessor definitions in the form ${NAME_OF_DEFINITION}, which will be replaced with their values."); + props.add (new TextPropertyComponent (getExtraLinkerFlags(), "Extra linker flags", 2048, false), + "Extra command-line flags to be passed to the linker. You might want to use this for adding additional libraries. This string can contain references to preprocessor definitions in the form ${NAME_OF_VALUE}, which will be replaced with their values."); + + { + OwnedArray images; + project.findAllImageItems (images); + + StringArray choices; + Array ids; + + choices.add (""); + ids.add (var::null); + choices.add (String::empty); + ids.add (var::null); + + for (int i = 0; i < images.size(); ++i) + { + choices.add (images.getUnchecked(i)->getName().toString()); + ids.add (images.getUnchecked(i)->getID()); + } + + props.add (new ChoicePropertyComponent (getSmallIconImageItemID(), "Icon (small)", choices, ids), + "Sets an icon to use for the executable."); + + props.add (new ChoicePropertyComponent (getBigIconImageItemID(), "Icon (large)", choices, ids), + "Sets an icon to use for the executable."); + } +} + +StringPairArray ProjectExporter::getAllPreprocessorDefs (const ProjectExporter::BuildConfiguration& config) const +{ + StringPairArray defs (mergePreprocessorDefs (config.getAllPreprocessorDefs(), + parsePreprocessorDefs (getExporterPreprocessorDefs().toString()))); + defs.set (getExporterIdentifierMacro(), "1"); + return defs; +} + +StringPairArray ProjectExporter::getAllPreprocessorDefs() const +{ + StringPairArray defs (mergePreprocessorDefs (project.getPreprocessorDefs(), + parsePreprocessorDefs (getExporterPreprocessorDefs().toString()))); + defs.set (getExporterIdentifierMacro(), "1"); + return defs; +} + +String ProjectExporter::replacePreprocessorTokens (const ProjectExporter::BuildConfiguration& config, const String& sourceString) const +{ + return replacePreprocessorDefs (getAllPreprocessorDefs (config), sourceString); +} + +Project::Item& ProjectExporter::getModulesGroup() +{ + if (modulesGroup == nullptr) + { + groups.add (Project::Item::createGroup (project, "Juce Modules", "__modulesgroup__")); + modulesGroup = &(groups.getReference (groups.size() - 1)); + } + + return *modulesGroup; +} + +void ProjectExporter::addToExtraSearchPaths (const RelativePath& pathFromProjectFolder) +{ + RelativePath localPath (rebaseFromProjectFolderToBuildTarget (pathFromProjectFolder)); + + const String path (isVisualStudio() ? localPath.toWindowsStyle() : localPath.toUnixStyle()); + extraSearchPaths.addIfNotAlreadyThere (path, false); +} + + +//============================================================================== +const Identifier ProjectExporter::configurations ("CONFIGURATIONS"); +const Identifier ProjectExporter::configuration ("CONFIGURATION"); + +ValueTree ProjectExporter::getConfigurations() const +{ + return settings.getChildWithName (configurations); +} + +int ProjectExporter::getNumConfigurations() const +{ + return getConfigurations().getNumChildren(); +} + +ProjectExporter::BuildConfiguration::Ptr ProjectExporter::getConfiguration (int index) const +{ + return createBuildConfig (getConfigurations().getChild (index)); +} + +bool ProjectExporter::hasConfigurationNamed (const String& name) const +{ + const ValueTree configs (getConfigurations()); + for (int i = configs.getNumChildren(); --i >= 0;) + if (configs.getChild(i) [Ids::name].toString() == name) + return true; + + return false; +} + +String ProjectExporter::getUniqueConfigName (String name) const +{ + String nameRoot (name); + while (CharacterFunctions::isDigit (nameRoot.getLastCharacter())) + nameRoot = nameRoot.dropLastCharacters (1); + + nameRoot = nameRoot.trim(); + + int suffix = 2; + while (hasConfigurationNamed (name)) + name = nameRoot + " " + String (suffix++); + + return name; +} + +void ProjectExporter::addNewConfiguration (const BuildConfiguration* configToCopy) +{ + const String configName (getUniqueConfigName (configToCopy != nullptr ? configToCopy->config [Ids::name].toString() + : "New Build Configuration")); + + ValueTree configs (getConfigurations()); + + if (! configs.isValid()) + { + settings.addChild (ValueTree (configurations), 0, project.getUndoManagerFor (settings)); + configs = getConfigurations(); + } + + ValueTree newConfig (configuration); + if (configToCopy != nullptr) + newConfig = configToCopy->config.createCopy(); + + newConfig.setProperty (Ids::name, configName, 0); + + configs.addChild (newConfig, -1, project.getUndoManagerFor (configs)); +} + +void ProjectExporter::deleteConfiguration (int index) +{ + ValueTree configs (getConfigurations()); + configs.removeChild (index, project.getUndoManagerFor (configs)); +} + +void ProjectExporter::createDefaultConfigs() +{ + settings.getOrCreateChildWithName (configurations, nullptr); + + for (int i = 0; i < 2; ++i) + { + addNewConfiguration (nullptr); + BuildConfiguration::Ptr config (getConfiguration (i)); + + const bool debugConfig = i == 0; + + config->getName() = debugConfig ? "Debug" : "Release"; + config->isDebug() = debugConfig; + config->getOptimisationLevel() = debugConfig ? 1 : 2; + config->getTargetBinaryName() = project.getProjectFilenameRoot(); + } +} + +Image ProjectExporter::getBigIcon() +{ + return project.getMainGroup().findItemWithID (getBigIconImageItemID().toString()).loadAsImageFile(); +} + +Image ProjectExporter::getSmallIcon() +{ + return project.getMainGroup().findItemWithID (getSmallIconImageItemID().toString()).loadAsImageFile(); +} + +Image ProjectExporter::getBestIconForSize (int size, bool returnNullIfNothingBigEnough) +{ + Image im; + + const Image im1 (getSmallIcon()); + const Image im2 (getBigIcon()); + + if (im1.isValid() && im2.isValid()) + { + if (im1.getWidth() >= size && im2.getWidth() >= size) + im = im1.getWidth() < im2.getWidth() ? im1 : im2; + else if (im1.getWidth() >= size) + im = im1; + else if (im2.getWidth() >= size) + im = im2; + else + return Image::null; + } + else + { + im = im1.isValid() ? im1 : im2; + } + + if (size == im.getWidth() && size == im.getHeight()) + return im; + + if (returnNullIfNothingBigEnough && im.getWidth() < size && im.getHeight() < size) + return Image::null; + + Image newIm (Image::ARGB, size, size, true, SoftwareImageType()); + Graphics g (newIm); + g.drawImageWithin (im, 0, 0, size, size, + RectanglePlacement::centred | RectanglePlacement::onlyReduceInSize, false); + return newIm; +} + +//============================================================================== +ProjectExporter::ConfigIterator::ConfigIterator (ProjectExporter& exporter_) + : index (-1), exporter (exporter_) +{ +} + +bool ProjectExporter::ConfigIterator::next() +{ + if (++index >= exporter.getNumConfigurations()) + return false; + + config = exporter.getConfiguration (index); + return true; +} + +//============================================================================== +ProjectExporter::BuildConfiguration::BuildConfiguration (Project& project_, const ValueTree& configNode) + : config (configNode), project (project_) +{ +} + +ProjectExporter::BuildConfiguration::~BuildConfiguration() +{ +} + +String ProjectExporter::BuildConfiguration::getGCCOptimisationFlag() const +{ + const int level = (int) getOptimisationLevel().getValue(); + return String (level <= 1 ? "0" : (level == 2 ? "s" : "3")); +} + +void ProjectExporter::BuildConfiguration::createBasicPropertyEditors (PropertyListBuilder& props) +{ + props.add (new TextPropertyComponent (getName(), "Name", 96, false), + "The name of this configuration."); + + props.add (new BooleanPropertyComponent (isDebug(), "Debug mode", "Debugging enabled"), + "If enabled, this means that the configuration should be built with debug synbols."); + + const char* optimisationLevels[] = { "No optimisation", "Optimise for size and speed", "Optimise for maximum speed", 0 }; + const int optimisationLevelValues[] = { 1, 2, 3, 0 }; + props.add (new ChoicePropertyComponent (getOptimisationLevel(), "Optimisation", StringArray (optimisationLevels), Array (optimisationLevelValues)), + "The optimisation level for this configuration"); + + props.add (new TextPropertyComponent (getTargetBinaryName(), "Binary name", 256, false), + "The filename to use for the destination binary executable file. Don't add a suffix to this, because platform-specific suffixes will be added for each target platform."); + + props.add (new TextPropertyComponent (getTargetBinaryRelativePath(), "Binary location", 1024, false), + "The folder in which the finished binary should be placed. Leave this blank to cause the binary to be placed in its default location in the build folder."); + + props.add (new TextPropertyComponent (getHeaderSearchPath(), "Header search paths", 16384, false), + "Extra header search paths. Use semi-colons to separate multiple paths."); + + props.add (new TextPropertyComponent (getLibrarySearchPath(), "Extra library search paths", 16384, false), + "Extra library search paths. Use semi-colons to separate multiple paths."); + + props.add (new TextPropertyComponent (getBuildConfigPreprocessorDefs(), "Preprocessor definitions", 32768, false), + "Extra preprocessor definitions. Use the form \"NAME1=value NAME2=value\", using whitespace or commas to separate the items - to include a space or comma in a definition, precede it with a backslash."); + + props.setPreferredHeight (22); +} + +StringPairArray ProjectExporter::BuildConfiguration::getAllPreprocessorDefs() const +{ + return mergePreprocessorDefs (project.getPreprocessorDefs(), + parsePreprocessorDefs (getBuildConfigPreprocessorDefs().toString())); +} + +StringArray ProjectExporter::BuildConfiguration::getHeaderSearchPaths() const +{ + StringArray s; + s.addTokens (getHeaderSearchPath().toString(), ";", String::empty); + s.trim(); + s.removeEmptyStrings(); + s.removeDuplicates (false); + return s; +} + +StringArray ProjectExporter::BuildConfiguration::getLibrarySearchPaths() const +{ + StringArray s; + s.addTokens (getLibrarySearchPath().toString(), ";", String::empty); + s.trim(); + s.removeEmptyStrings(); + s.removeDuplicates (false); + return s; +} + +String ProjectExporter::BuildConfiguration::getGCCLibraryPathFlags() const +{ + String s; + const StringArray libraryPaths (getLibrarySearchPaths()); + + for (int i = 0; i < libraryPaths.size(); ++i) + s << " -L" << addQuotesIfContainsSpaces (libraryPaths[i]); + + return s; +} diff --git a/extras/Introjucer/Source/Project/jucer_ProjectExporter.h b/extras/Introjucer/Source/Project Saving/jucer_ProjectExporter.h similarity index 52% rename from extras/Introjucer/Source/Project/jucer_ProjectExporter.h rename to extras/Introjucer/Source/Project Saving/jucer_ProjectExporter.h index 8e22c982db..6f87456828 100644 --- a/extras/Introjucer/Source/Project/jucer_ProjectExporter.h +++ b/extras/Introjucer/Source/Project Saving/jucer_ProjectExporter.h @@ -2,7 +2,7 @@ ============================================================================== This file is part of the JUCE library - "Jules' Utility Class Extensions" - Copyright 2004-10 by Raw Material Software Ltd. + Copyright 2004-11 by Raw Material Software Ltd. ------------------------------------------------------------------------------ @@ -27,43 +27,45 @@ #define __JUCER_PROJECTEXPORTER_JUCEHEADER__ #include "../jucer_Headers.h" -#include "jucer_Project.h" -#include "jucer_ProjectType.h" +#include "../Project/jucer_Project.h" +#include "../Project/jucer_ProjectType.h" //============================================================================== class ProjectExporter { -protected: - //============================================================================== - ProjectExporter (Project& project, const ValueTree& settings); - public: + ProjectExporter (Project&, const ValueTree& settings); virtual ~ProjectExporter(); static int getNumExporters(); static StringArray getExporterNames(); - static ProjectExporter* createNewExporter (Project& project, const int index); - static ProjectExporter* createExporter (Project& project, const ValueTree& settings); - static ProjectExporter* createPlatformDefaultExporter (Project& project); + static ProjectExporter* createNewExporter (Project&, const int index); + static ProjectExporter* createNewExporter (Project&, const String& name); + static ProjectExporter* createExporter (Project&, const ValueTree& settings); + static ProjectExporter* createPlatformDefaultExporter (Project&); + + static StringArray getDefaultExporters(); //============================================================================= // return 0 if this can't be opened in the current OS, or a higher value, where higher numbers are more preferable. virtual int getLaunchPreferenceOrderForCurrentOS() = 0; virtual bool isPossibleForCurrentProject() = 0; virtual bool usesMMFiles() const = 0; - virtual void createPropertyEditors (Array & props); + virtual void createPropertyEditors (PropertyListBuilder&); virtual void launchProject() = 0; virtual void create() = 0; // may throw a SaveError virtual bool shouldFileBeCompiledByDefault (const RelativePath& path) const; + virtual bool canCopeWithDuplicateFiles() = 0; virtual bool isXcode() const { return false; } virtual bool isVisualStudio() const { return false; } virtual bool isLinux() const { return false; } + virtual bool isOSX() const { return false; } //============================================================================== - String getName() const { return name; } + String getName() const { return name; } File getTargetFolder() const; Project& getProject() noexcept { return project; } @@ -72,26 +74,23 @@ public: const ValueTree& getSettings() const { return settings; } Value getSetting (const Identifier& name_) const { return settings.getPropertyAsValue (name_, project.getUndoManagerFor (settings)); } - Value getJuceFolder() const { return getSetting (Ids::juceFolder); } - Value getTargetLocation() const { return getSetting (Ids::targetFolder); } + Value getJuceFolder() const { return getSetting (Ids::juceFolder); } + Value getTargetLocation() const { return getSetting (Ids::targetFolder); } - Value getExtraCompilerFlags() const { return getSetting (Ids::extraCompilerFlags); } - Value getExtraLinkerFlags() const { return getSetting (Ids::extraLinkerFlags); } - - Value getExporterPreprocessorDefs() const { return getSetting (Ids::extraDefs); } - - // includes exporter, project + config defs - StringPairArray getAllPreprocessorDefs (const Project::BuildConfiguration& config) const; - // includes exporter + project defs.. - StringPairArray getAllPreprocessorDefs() const; - - String replacePreprocessorTokens (const Project::BuildConfiguration& config, - const String& sourceString) const; + Value getExtraCompilerFlags() const { return getSetting (Ids::extraCompilerFlags); } + Value getExtraLinkerFlags() const { return getSetting (Ids::extraLinkerFlags); } // This adds the quotes, and may return angle-brackets, eg: or normal quotes. String getIncludePathForFileInJuceFolder (const String& pathFromJuceFolder, const File& targetIncludeFile) const; RelativePath rebaseFromProjectFolderToBuildTarget (const RelativePath& path) const; + void addToExtraSearchPaths (const RelativePath& pathFromProjectFolder); + + Value getBigIconImageItemID() const { return getSetting (Ids::bigIcon); } + Value getSmallIconImageItemID() const { return getSetting (Ids::smallIcon); } + Image getBigIcon(); + Image getSmallIcon(); + Image getBestIconForSize (int size, bool returnNullIfNothingBigEnough); String getExporterIdentifierMacro() const { @@ -118,7 +117,7 @@ public: //============================================================================== Array groups; - OwnedArray libraryModules; + Project::Item& getModulesGroup(); //============================================================================== String xcodePackageType, xcodeBundleSignature, xcodeBundleExtension; @@ -127,6 +126,7 @@ public: bool xcodeIsBundle, xcodeCreatePList, xcodeCanUseDwarf; StringArray xcodeFrameworks; Array xcodeExtraLibrariesDebug, xcodeExtraLibrariesRelease; + Array xcodeExtraPListEntries; //============================================================================== String makefileTargetSuffix; @@ -136,11 +136,100 @@ public: String msvcTargetSuffix; StringPairArray msvcExtraPreprocessorDefs; bool msvcIsDLL, msvcIsWindowsSubsystem, msvcNeedsDLLRuntimeLib; - String msvcExtraLinkerOptions, msvcDelayLoadedDLLs, msvcModuleDefinitionFile; - String msvcPostBuildCommand, msvcPostBuildOutputs; + String msvcDelayLoadedDLLs; //============================================================================== - void createLibraryModules(); + StringArray extraSearchPaths; + + //============================================================================== + class BuildConfiguration : public ReferenceCountedObject + { + public: + BuildConfiguration (Project& project, const ValueTree& configNode); + ~BuildConfiguration(); + + typedef ReferenceCountedObjectPtr Ptr; + + //============================================================================== + virtual void createPropertyEditors (PropertyListBuilder&) = 0; + + //============================================================================== + Value getName() const { return getValue (Ids::name); } + Value isDebug() const { return getValue (Ids::isDebug); } + Value getTargetBinaryName() const { return getValue (Ids::targetName); } + // the path relative to the build folder in which the binary should go + Value getTargetBinaryRelativePath() const { return getValue (Ids::binaryPath); } + Value getOptimisationLevel() const { return getValue (Ids::optimisation); } + String getGCCOptimisationFlag() const; + Value getBuildConfigPreprocessorDefs() const { return getValue (Ids::defines); } + StringPairArray getAllPreprocessorDefs() const; // includes inherited definitions + Value getHeaderSearchPath() const { return getValue (Ids::headerPath); } + StringArray getHeaderSearchPaths() const; + Value getLibrarySearchPath() const { return getValue (Ids::libraryPath); } + StringArray getLibrarySearchPaths() const; + String getGCCLibraryPathFlags() const; + + //============================================================================== + ValueTree config; + + //============================================================================== + String msvcExtraLinkerOptions, msvcModuleDefinitionFile; + String msvcPreBuildCommand, msvcPostBuildCommand; + + protected: + Project& project; + + Value getValue (const Identifier& name) const { return config.getPropertyAsValue (name, getUndoManager()); } + UndoManager* getUndoManager() const { return project.getUndoManagerFor (config); } + + void createBasicPropertyEditors (PropertyListBuilder&); + + private: + JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (BuildConfiguration); + }; + + void addNewConfiguration (const BuildConfiguration* configToCopy); + void deleteConfiguration (int index); + bool hasConfigurationNamed (const String& name) const; + String getUniqueConfigName (String name) const; + + //============================================================================== + struct ConfigIterator + { + ConfigIterator (ProjectExporter& exporter); + + bool next(); + + BuildConfiguration& operator*() const { return *config; } + BuildConfiguration* operator->() const { return config; } + + BuildConfiguration::Ptr config; + int index; + + private: + ProjectExporter& exporter; + JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (ConfigIterator); + }; + + int getNumConfigurations() const; + BuildConfiguration::Ptr getConfiguration (int index) const; + + ValueTree getConfigurations() const; + void createDefaultConfigs(); + + static const Identifier configurations, configuration; + + //============================================================================== + Value getExporterPreprocessorDefs() const { return getSetting (Ids::extraDefs); } + + // includes exporter, project + config defs + StringPairArray getAllPreprocessorDefs (const BuildConfiguration& config) const; + // includes exporter + project defs.. + StringPairArray getAllPreprocessorDefs() const; + + String replacePreprocessorTokens (const BuildConfiguration&, const String& sourceString) const; + + ValueTree settings; protected: //============================================================================== @@ -149,8 +238,9 @@ protected: const ProjectType& projectType; const String projectName; const File projectFolder; - Array configs; - ValueTree settings; + Project::Item* modulesGroup; + + virtual BuildConfiguration::Ptr createBuildConfig (const ValueTree&) const = 0; static String getDefaultBuildsRootFolder() { return "Builds/"; } @@ -163,8 +253,6 @@ protected: return name; } - Image getBestIconForSize (int size, bool returnNullIfNothingBigEnough); - //============================================================================== static void overwriteFileIfDifferentOrThrow (const File& file, const MemoryOutputStream& newData) { @@ -178,11 +266,21 @@ protected: throw SaveError ("Can't create folder: " + dirToCreate.getFullPathName()); } - static void writeXmlOrThrow (const XmlElement& xml, const File& file, const String& encoding, int maxCharsPerLine) + static void writeXmlOrThrow (const XmlElement& xml, const File& file, const String& encoding, int maxCharsPerLine, bool useUnixNewLines = false) { MemoryOutputStream mo; xml.writeToStream (mo, String::empty, false, true, encoding, maxCharsPerLine); - overwriteFileIfDifferentOrThrow (file, mo); + + if (useUnixNewLines) + { + MemoryOutputStream mo2; + mo2 << mo.toString().replace ("\r\n", "\n"); + overwriteFileIfDifferentOrThrow (file, mo2); + } + else + { + overwriteFileIfDifferentOrThrow (file, mo); + } } private: diff --git a/extras/Introjucer/Source/Project Saving/jucer_ProjectSaver.h b/extras/Introjucer/Source/Project Saving/jucer_ProjectSaver.h new file mode 100644 index 0000000000..ac7589fbd0 --- /dev/null +++ b/extras/Introjucer/Source/Project Saving/jucer_ProjectSaver.h @@ -0,0 +1,453 @@ +/* + ============================================================================== + + This file is part of the JUCE library - "Jules' Utility Class Extensions" + Copyright 2004-11 by Raw Material Software Ltd. + + ------------------------------------------------------------------------------ + + JUCE can be redistributed and/or modified under the terms of the GNU General + Public License (Version 2), as published by the Free Software Foundation. + A copy of the license is included in the JUCE distribution, or can be found + online at www.gnu.org/licenses. + + JUCE is distributed in the hope that it will be useful, but WITHOUT ANY + WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR + A PARTICULAR PURPOSE. See the GNU General Public License for more details. + + ------------------------------------------------------------------------------ + + To release a closed-source product which uses JUCE, commercial licenses are + available: visit www.rawmaterialsoftware.com/juce for more information. + + ============================================================================== +*/ + +#ifndef __JUCER_PROJECTSAVER_JUCEHEADER__ +#define __JUCER_PROJECTSAVER_JUCEHEADER__ + +#include "jucer_ResourceFile.h" +#include "../Project/jucer_Module.h" +#include "jucer_ProjectExporter.h" + + +//============================================================================== +class ProjectSaver +{ +public: + ProjectSaver (Project& project_, const File& projectFile_) + : project (project_), + projectFile (projectFile_), + generatedCodeFolder (project.getGeneratedCodeFolder()), + generatedFilesGroup (Project::Item::createGroup (project, getJuceCodeGroupName(), "__generatedcode__")) + { + generatedFilesGroup.setID (getGeneratedGroupID()); + + if (generatedCodeFolder.exists()) + deleteNonHiddenFilesIn (generatedCodeFolder); + } + + Project& getProject() noexcept { return project; } + + String save() + { + jassert (generatedFilesGroup.getNumChildren() == 0); // this method can't be called more than once! + + const File oldFile (project.getFile()); + project.setFile (projectFile); + + writeMainProjectFile(); + + OwnedArray modules; + + { + ModuleList moduleList; + moduleList.rescan (ModuleList::getDefaultModulesFolder (&project)); + project.createRequiredModules (moduleList, modules); + } + + if (errors.size() == 0) + writeAppConfigFile (modules); + + if (errors.size() == 0) + writeBinaryDataFiles(); + + if (errors.size() == 0) + writeAppHeader (modules); + + if (errors.size() == 0) + writeProjects (modules); + + if (errors.size() == 0) + writeAppConfigFile (modules); // (this is repeated in case the projects added anything to it) + + if (generatedCodeFolder.exists() && errors.size() == 0) + writeReadmeFile(); + + if (errors.size() > 0) + project.setFile (oldFile); + + return errors[0]; + } + + Project::Item saveGeneratedFile (const String& filePath, const MemoryOutputStream& newData) + { + if (! generatedCodeFolder.createDirectory()) + { + errors.add ("Couldn't create folder: " + generatedCodeFolder.getFullPathName()); + return Project::Item (project, ValueTree::invalid); + } + + const File file (generatedCodeFolder.getChildFile (filePath)); + + if (replaceFileIfDifferent (file, newData)) + return addFileToGeneratedGroup (file); + + return Project::Item (project, ValueTree::invalid); + } + + Project::Item addFileToGeneratedGroup (const File& file) + { + Project::Item item (generatedFilesGroup.findItemForFile (file)); + + if (item.isValid()) + return item; + + generatedFilesGroup.addFile (file, -1, true); + return generatedFilesGroup.findItemForFile (file); + } + + void setExtraAppConfigFileContent (const String& content) + { + extraAppConfigContent = content; + } + + static void writeAutoGenWarningComment (OutputStream& out) + { + out << "/*" << newLine << newLine + << " IMPORTANT! This file is auto-generated each time you save your" << newLine + << " project - if you alter its contents, your changes may be overwritten!" << newLine + << newLine; + } + + static const char* getGeneratedGroupID() noexcept { return "__jucelibfiles"; } + Project::Item& getGeneratedCodeGroup() { return generatedFilesGroup; } + + static String getJuceCodeGroupName() { return "Juce Library Code"; } + + File getGeneratedCodeFolder() const { return generatedCodeFolder; } + + bool replaceFileIfDifferent (const File& f, const MemoryOutputStream& newData) + { + if (! FileHelpers::overwriteFileWithNewDataIfDifferent (f, newData)) + { + errors.add ("Can't write to file: " + f.getFullPathName()); + return false; + } + + return true; + } + +private: + Project& project; + const File projectFile, generatedCodeFolder; + Project::Item generatedFilesGroup; + String extraAppConfigContent; + StringArray errors; + + File appConfigFile, binaryDataCpp; + + // Recursively clears out a folder's contents, but leaves behind any folders + // containing hidden files used by version-control systems. + static bool deleteNonHiddenFilesIn (const File& parent) + { + bool folderIsNowEmpty = true; + DirectoryIterator i (parent, false, "*", File::findFilesAndDirectories); + Array filesToDelete; + + bool isFolder; + while (i.next (&isFolder, nullptr, nullptr, nullptr, nullptr, nullptr)) + { + const File f (i.getFile()); + + if (shouldFileBeKept (f.getFileName())) + { + folderIsNowEmpty = false; + } + else if (isFolder) + { + if (deleteNonHiddenFilesIn (f)) + filesToDelete.add (f); + else + folderIsNowEmpty = false; + } + else + { + filesToDelete.add (f); + } + } + + for (int j = filesToDelete.size(); --j >= 0;) + filesToDelete.getReference(j).deleteRecursively(); + + return folderIsNowEmpty; + } + + static bool shouldFileBeKept (const String& filename) + { + const char* filesToKeep[] = { ".svn", ".cvs", "CMakeLists.txt" }; + + for (int i = 0; i < numElementsInArray (filesToKeep); ++i) + if (filename == filesToKeep[i]) + return true; + + return false; + } + + void writeMainProjectFile() + { + ScopedPointer xml (project.getProjectRoot().createXml()); + jassert (xml != nullptr); + + if (xml != nullptr) + { + MemoryOutputStream mo; + xml->writeToStream (mo, String::empty); + replaceFileIfDifferent (projectFile, mo); + } + } + + static int findLongestModuleName (const OwnedArray& modules) + { + int longest = 0; + + for (int i = modules.size(); --i >= 0;) + longest = jmax (longest, modules.getUnchecked(i)->getID().length()); + + return longest; + } + + void writeAppConfig (OutputStream& out, const OwnedArray& modules) + { + writeAutoGenWarningComment (out); + out << " If you want to change any of these values, use the Introjucer to do so," << newLine + << " rather than editing this file directly!" << newLine + << newLine + << " Any commented-out settings will assume their default values." << newLine + << newLine + << "*/" << newLine + << newLine; + + const String headerGuard ("__JUCE_APPCONFIG_" + project.getProjectUID().toUpperCase() + "__"); + out << "#ifndef " << headerGuard << newLine + << "#define " << headerGuard << newLine + << newLine + << "//==============================================================================" << newLine; + + const int longestName = findLongestModuleName (modules); + + for (int k = 0; k < modules.size(); ++k) + { + LibraryModule* const m = modules.getUnchecked(k); + out << "#define JUCE_MODULE_AVAILABLE_" << m->getID() + << String::repeatedString (" ", longestName + 5 - m->getID().length()) << " 1" << newLine; + } + + out << newLine; + + for (int j = 0; j < modules.size(); ++j) + { + LibraryModule* const m = modules.getUnchecked(j); + OwnedArray flags; + m->getConfigFlags (project, flags); + + if (flags.size() > 0) + { + out << "//==============================================================================" << newLine + << "// " << m->getID() << " flags:" << newLine + << newLine; + + for (int i = 0; i < flags.size(); ++i) + { + flags.getUnchecked(i)->value.referTo (project.getConfigFlag (flags.getUnchecked(i)->symbol)); + + const Project::ConfigFlag* const f = flags[i]; + const String value (project.getConfigFlag (f->symbol).toString()); + + out << "#ifndef " << f->symbol << newLine; + + if (value == Project::configFlagEnabled) + out << " #define " << f->symbol << " 1"; + else if (value == Project::configFlagDisabled) + out << " #define " << f->symbol << " 0"; + else + out << " //#define " << f->symbol; + + out << newLine + << "#endif" << newLine + << newLine; + } + } + } + + if (extraAppConfigContent.isNotEmpty()) + out << newLine << extraAppConfigContent.trimEnd() << newLine; + + out << newLine + << "#endif // " << headerGuard << newLine; + } + + void writeAppConfigFile (const OwnedArray& modules) + { + appConfigFile = generatedCodeFolder.getChildFile (project.getAppConfigFilename()); + + MemoryOutputStream mem; + writeAppConfig (mem, modules); + saveGeneratedFile (project.getAppConfigFilename(), mem); + } + + void writeAppHeader (OutputStream& out, const OwnedArray& modules) + { + writeAutoGenWarningComment (out); + + out << " This is the header file that your files should include in order to get all the" << newLine + << " JUCE library headers. You should avoid including the JUCE headers directly in" << newLine + << " your own source files, because that wouldn't pick up the correct configuration" << newLine + << " options for your app." << newLine + << newLine + << "*/" << newLine << newLine; + + String headerGuard ("__APPHEADERFILE_" + project.getProjectUID().toUpperCase() + "__"); + out << "#ifndef " << headerGuard << newLine + << "#define " << headerGuard << newLine << newLine; + + if (appConfigFile.exists()) + out << CodeHelpers::createIncludeStatement (project.getAppConfigFilename()) << newLine; + + for (int i = 0; i < modules.size(); ++i) + modules.getUnchecked(i)->writeIncludes (*this, out); + + if (binaryDataCpp.exists()) + out << CodeHelpers::createIncludeStatement (binaryDataCpp.withFileExtension (".h"), appConfigFile) << newLine; + + out << newLine + << "#if ! DONT_SET_USING_JUCE_NAMESPACE" << newLine + << " // If your code uses a lot of JUCE classes, then this will obviously save you" << newLine + << " // a lot of typing, but can be disabled by setting DONT_SET_USING_JUCE_NAMESPACE." << newLine + << " using namespace juce;" << newLine + << "#endif" << newLine + << newLine + << "namespace ProjectInfo" << newLine + << "{" << newLine + << " const char* const projectName = " << CodeHelpers::addEscapeChars (project.getProjectName().toString()).quoted() << ";" << newLine + << " const char* const versionString = " << CodeHelpers::addEscapeChars (project.getVersion().toString()).quoted() << ";" << newLine + << " const int versionNumber = " << project.getVersionAsHex() << ";" << newLine + << "}" << newLine + << newLine + << "#endif // " << headerGuard << newLine; + } + + void writeAppHeader (const OwnedArray& modules) + { + MemoryOutputStream mem; + writeAppHeader (mem, modules); + saveGeneratedFile (project.getJuceSourceHFilename(), mem); + } + + void writeBinaryDataFiles() + { + binaryDataCpp = generatedCodeFolder.getChildFile ("BinaryData.cpp"); + + ResourceFile resourceFile (project); + + if (resourceFile.getNumFiles() > 0) + { + resourceFile.setClassName ("BinaryData"); + + if (resourceFile.write (binaryDataCpp)) + { + generatedFilesGroup.addFile (binaryDataCpp, -1, true); + generatedFilesGroup.addFile (binaryDataCpp.withFileExtension (".h"), -1, false); + } + else + { + errors.add ("Can't create binary resources file: " + binaryDataCpp.getFullPathName()); + } + } + else + { + binaryDataCpp.deleteFile(); + binaryDataCpp.withFileExtension ("h").deleteFile(); + } + } + + void writeReadmeFile() + { + MemoryOutputStream out; + out << newLine + << " Important Note!!" << newLine + << " ================" << newLine + << newLine + << "The purpose of this folder is to contain files that are auto-generated by the Introjucer," << newLine + << "and ALL files in this folder will be mercilessly DELETED and completely re-written whenever" << newLine + << "the Introjucer saves your project." << newLine + << newLine + << "Therefore, it's a bad idea to make any manual changes to the files in here, or to" << newLine + << "put any of your own files in here if you don't want to lose them. (Of course you may choose" << newLine + << "to add the folder's contents to your version-control system so that you can re-merge your own" << newLine + << "modifications after the Introjucer has saved its changes)." << newLine; + + replaceFileIfDifferent (generatedCodeFolder.getChildFile ("ReadMe.txt"), out); + } + + static void sortGroupRecursively (Project::Item group) + { + group.sortAlphabetically (true); + + for (int i = group.getNumChildren(); --i >= 0;) + sortGroupRecursively (group.getChild(i)); + } + + void writeProjects (const OwnedArray& modules) + { + // keep a copy of the basic generated files group, as each exporter may modify it. + const ValueTree originalGeneratedGroup (generatedFilesGroup.state.createCopy()); + + for (Project::ExporterIterator exporter (project); exporter.next();) + { + std::cout << "Writing files for: " << exporter->getName() << std::endl; + + if (exporter->getTargetFolder().createDirectory()) + { + exporter->addToExtraSearchPaths (RelativePath ("JuceLibraryCode", RelativePath::projectFolder)); + + generatedFilesGroup.state = originalGeneratedGroup.createCopy(); + project.getProjectType().prepareExporter (*exporter); + + for (int j = 0; j < modules.size(); ++j) + modules.getUnchecked(j)->prepareExporter (*exporter, *this); + + sortGroupRecursively (generatedFilesGroup); + exporter->groups.add (generatedFilesGroup); + + try + { + exporter->create(); + } + catch (ProjectExporter::SaveError& error) + { + errors.add (error.message); + } + } + else + { + errors.add ("Can't create folder: " + exporter->getTargetFolder().getFullPathName()); + } + } + } + + JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (ProjectSaver); +}; + + +#endif // __JUCER_PROJECTSAVER_JUCEHEADER__ diff --git a/extras/Introjucer/Source/Project/jucer_ResourceFile.cpp b/extras/Introjucer/Source/Project Saving/jucer_ResourceFile.cpp similarity index 72% rename from extras/Introjucer/Source/Project/jucer_ResourceFile.cpp rename to extras/Introjucer/Source/Project Saving/jucer_ResourceFile.cpp index 0d5bdf4299..7a85623d0f 100644 --- a/extras/Introjucer/Source/Project/jucer_ResourceFile.cpp +++ b/extras/Introjucer/Source/Project Saving/jucer_ResourceFile.cpp @@ -2,7 +2,7 @@ ============================================================================== This file is part of the JUCE library - "Jules' Utility Class Extensions" - Copyright 2004-10 by Raw Material Software Ltd. + Copyright 2004-11 by Raw Material Software Ltd. ------------------------------------------------------------------------------ @@ -24,7 +24,7 @@ */ #include "jucer_ResourceFile.h" -#include "jucer_ProjectTreeViewBase.h" +#include "../Project/jucer_ProjectTreeViewBase.h" #include "../Application/jucer_OpenDocumentManager.h" static const char* resourceFileIdentifierString = "JUCER_BINARY_RESOURCE"; @@ -70,22 +70,17 @@ void ResourceFile::addResourcesFromProjectItem (const Project::Item& projectItem else { if (projectItem.shouldBeAddedToBinaryResources()) - addFile (projectItem.getFile()); + addFile (projectItem.getFile(), projectItem.getImageFileID()); } } //============================================================================== -void ResourceFile::setJuceHeaderToInclude (const File& header) -{ - juceHeader = header; -} - void ResourceFile::setClassName (const String& className_) { className = className_; } -void ResourceFile::addFile (const File& file) +void ResourceFile::addFile (const File& file, const String& imageProviderId) { files.add (file); @@ -96,6 +91,9 @@ void ResourceFile::addFile (const File& file) while (variableNames.contains (variableName)) variableName = variableNameRoot + String (suffix++); + if (imageProviderId.isNotEmpty()) + variableName << "|" << imageProviderId; + variableNames.add (variableName); } @@ -135,21 +133,49 @@ bool ResourceFile::write (const File& cppFile, OutputStream& cpp, OutputStream& cpp << "/* ==================================== " << resourceFileIdentifierString << " ====================================" << comment; - if (juceHeader.exists()) - header << CodeHelpers::createIncludeStatement (juceHeader, cppFile) << newLine; - const String namespaceName (className); + + cpp << "namespace " << namespaceName << newLine << "{" << newLine; + header << "namespace " << namespaceName << newLine << "{" << newLine; + StringArray returnCodes; - int i; - for (i = 0; i < files.size(); ++i) - returnCodes.add ("numBytes = " + namespaceName + "::" + variableNames[i] + "Size; return " - + namespaceName + "::" + variableNames[i] + ";"); + for (int i = 0; i < files.size(); ++i) + { + const File& file = files.getReference(i); + const int64 dataSize = file.getSize(); - cpp << CodeHelpers::createIncludeStatement (cppFile.withFileExtension (".h"), cppFile) << newLine + const String variableName (variableNames[i].upToFirstOccurrenceOf ("|", false, false)); + + returnCodes.add ("numBytes = " + String (dataSize) + "; return " + variableName + ";"); + + ScopedPointer fileStream (file.createInputStream()); + jassert (fileStream != nullptr); + + if (fileStream != nullptr) + { + const String tempVariable ("temp_" + String::toHexString (file.hashCode())); + + header << " extern const char* " << variableName << ";" << newLine; + header << " const int " << variableName << "Size = " << (int) dataSize << ";" << newLine << newLine; + + cpp << newLine << "//================== " << file.getFileName() << " ==================" << newLine + << "static const unsigned char " << tempVariable << "[] =" << newLine; + + { + MemoryBlock data; + fileStream->readIntoMemoryBlock (data); + CodeHelpers::writeDataAsCppLiteral (data, cpp, true, true); + } + + cpp << newLine << newLine + << "const char* " << variableName << " = (const char*) " << tempVariable << ";" << newLine; + } + } + + cpp << newLine << newLine - << newLine - << "const char* " << namespaceName << "::getNamedResource (const char* resourceNameUTF8, int& numBytes) throw()" << newLine + << "const char* getNamedResource (const char* resourceNameUTF8, int& numBytes) throw()" << newLine << "{" << newLine; CodeHelpers::createStringMatcher (cpp, "resourceNameUTF8", variableNames, returnCodes, 4); @@ -157,45 +183,33 @@ bool ResourceFile::write (const File& cppFile, OutputStream& cpp, OutputStream& cpp << " numBytes = 0;" << newLine << " return 0;" << newLine << "}" << newLine - << newLine; - - header << "namespace " << namespaceName << newLine << "{" << newLine; - - for (i = 0; i < files.size(); ++i) - { - const File& file = files.getReference(i); - const int64 dataSize = file.getSize(); - - ScopedPointer fileStream (file.createInputStream()); - jassert (fileStream != nullptr); - - if (fileStream != nullptr) - { - const String variableName (variableNames[i]); - const String tempVariable ("temp_" + String::toHexString (file.hashCode())); - - header << " extern const char* " << variableName << ";" << newLine; - header << " const int " << variableName << "Size = " << (int) dataSize << ";" << newLine << newLine; - - cpp << newLine << "//================== " << file.getFileName() << " ==================" << newLine - << "static const unsigned char " << tempVariable - << "[] =" << newLine; - - { - MemoryBlock data; - fileStream->readIntoMemoryBlock (data); - CodeHelpers::writeDataAsCppLiteral (data, cpp); - } - - cpp << newLine << newLine - << "const char* " << namespaceName << "::" << variableName << " = (const char*) " - << tempVariable << ";" << newLine; - } - } + << newLine + << "}" << newLine; header << " // If you provide the name of one of the binary resource variables above, this function will" << newLine << " // return the corresponding data and its size (or a null pointer if the name isn't found)." << newLine << " const char* getNamedResource (const char* resourceNameUTF8, int& dataSizeInBytes) throw();" << newLine + << newLine + << " //==============================================================================" << newLine + << " // This class acts as an ImageProvider that will access the BinaryData images" << newLine + << " class ImageProvider : public juce::ComponentBuilder::ImageProvider" << newLine + << " {" << newLine + << " public:" << newLine + << " ImageProvider() noexcept {}" << newLine + << newLine + << " juce::Image getImageForIdentifier (const juce::var& imageIdentifier)" << newLine + << " {" << newLine + << " int dataSize = 0;" << newLine + << " const char* const data = getNamedResource (imageIdentifier.toString().toUTF8(), dataSize);" << newLine + << newLine + << " if (data != nullptr)" << newLine + << " return juce::ImageCache::getFromMemory (data, dataSize);" << newLine + << newLine + << " return juce::Image();" << newLine + << " }" << newLine + << newLine + << " juce::var getIdentifierForImage (const juce::Image&) { return juce::var(); }" << newLine + << " };" << newLine << "}" << newLine; return true; diff --git a/extras/Introjucer/Source/Project/jucer_ResourceFile.h b/extras/Introjucer/Source/Project Saving/jucer_ResourceFile.h similarity index 90% rename from extras/Introjucer/Source/Project/jucer_ResourceFile.h rename to extras/Introjucer/Source/Project Saving/jucer_ResourceFile.h index 97f7268e3e..1b2fc80e7d 100644 --- a/extras/Introjucer/Source/Project/jucer_ResourceFile.h +++ b/extras/Introjucer/Source/Project Saving/jucer_ResourceFile.h @@ -2,7 +2,7 @@ ============================================================================== This file is part of the JUCE library - "Jules' Utility Class Extensions" - Copyright 2004-10 by Raw Material Software Ltd. + Copyright 2004-11 by Raw Material Software Ltd. ------------------------------------------------------------------------------ @@ -27,7 +27,7 @@ #define __JUCER_RESOURCEFILE_JUCEHEADER__ #include "../jucer_Headers.h" -#include "jucer_Project.h" +#include "../Project/jucer_Project.h" //============================================================================== @@ -42,12 +42,10 @@ public: static bool isResourceFile (const File& file); //============================================================================== - void setJuceHeaderToInclude (const File& header); - void setClassName (const String& className); String getClassName() const { return className; } - void addFile (const File& file); + void addFile (const File& file, const String& imageProviderId); String getDataVariableFor (const File& file) const; String getSizeVariableFor (const File& file) const; @@ -62,7 +60,6 @@ private: Array files; StringArray variableNames; Project& project; - File juceHeader; String className; void addResourcesFromProjectItem (const Project::Item& node); diff --git a/extras/Introjucer/Source/Project/jucer_AudioPluginModule.h b/extras/Introjucer/Source/Project/jucer_AudioPluginModule.h new file mode 100644 index 0000000000..7f89da8d9c --- /dev/null +++ b/extras/Introjucer/Source/Project/jucer_AudioPluginModule.h @@ -0,0 +1,425 @@ +/* + ============================================================================== + + This file is part of the JUCE library - "Jules' Utility Class Extensions" + Copyright 2004-11 by Raw Material Software Ltd. + + ------------------------------------------------------------------------------ + + JUCE can be redistributed and/or modified under the terms of the GNU General + Public License (Version 2), as published by the Free Software Foundation. + A copy of the license is included in the JUCE distribution, or can be found + online at www.gnu.org/licenses. + + JUCE is distributed in the hope that it will be useful, but WITHOUT ANY + WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR + A PARTICULAR PURPOSE. See the GNU General Public License for more details. + + ------------------------------------------------------------------------------ + + To release a closed-source product which uses JUCE, commercial licenses are + available: visit www.rawmaterialsoftware.com/juce for more information. + + ============================================================================== +*/ + +#ifndef __JUCER_AUDIOPLUGINMODULE_JUCEHEADER__ +#define __JUCER_AUDIOPLUGINMODULE_JUCEHEADER__ + + +//============================================================================== +namespace +{ + Value shouldBuildVST (const Project& project) { return project.getProjectValue ("buildVST"); } + Value shouldBuildRTAS (const Project& project) { return project.getProjectValue ("buildRTAS"); } + Value shouldBuildAU (const Project& project) { return project.getProjectValue ("buildAU"); } + + Value getPluginName (const Project& project) { return project.getProjectValue ("pluginName"); } + Value getPluginDesc (const Project& project) { return project.getProjectValue ("pluginDesc"); } + Value getPluginManufacturer (const Project& project) { return project.getProjectValue ("pluginManufacturer"); } + Value getPluginManufacturerCode (const Project& project) { return project.getProjectValue ("pluginManufacturerCode"); } + Value getPluginCode (const Project& project) { return project.getProjectValue ("pluginCode"); } + Value getPluginChannelConfigs (const Project& project) { return project.getProjectValue ("pluginChannelConfigs"); } + Value getPluginIsSynth (const Project& project) { return project.getProjectValue ("pluginIsSynth"); } + Value getPluginWantsMidiInput (const Project& project) { return project.getProjectValue ("pluginWantsMidiIn"); } + Value getPluginProducesMidiOut (const Project& project) { return project.getProjectValue ("pluginProducesMidiOut"); } + Value getPluginSilenceInProducesSilenceOut (const Project& project) { return project.getProjectValue ("pluginSilenceInIsSilenceOut"); } + Value getPluginTailLengthSeconds (const Project& project) { return project.getProjectValue ("pluginTailLength"); } + Value getPluginEditorNeedsKeyFocus (const Project& project) { return project.getProjectValue ("pluginEditorRequiresKeys"); } + Value getPluginAUExportPrefix (const Project& project) { return project.getProjectValue ("pluginAUExportPrefix"); } + Value getPluginAUCocoaViewClassName (const Project& project) { return project.getProjectValue ("pluginAUViewClass"); } + Value getPluginRTASCategory (const Project& project) { return project.getProjectValue ("pluginRTASCategory"); } + + String getPluginRTASCategoryCode (const Project& project) + { + if (static_cast (getPluginIsSynth (project).getValue())) + return "ePlugInCategory_SWGenerators"; + + String s (getPluginRTASCategory (project).toString()); + if (s.isEmpty()) + s = "ePlugInCategory_None"; + + return s; + } + + int countMaxPluginChannels (const String& configString, bool isInput) + { + StringArray configs; + configs.addTokens (configString, ", {}", String::empty); + configs.trim(); + configs.removeEmptyStrings(); + jassert ((configs.size() & 1) == 0); // looks like a syntax error in the configs? + + int maxVal = 0; + for (int i = (isInput ? 0 : 1); i < configs.size(); i += 2) + maxVal = jmax (maxVal, configs[i].getIntValue()); + + return maxVal; + } + + String valueToBool (const Value& v) + { + return static_cast (v.getValue()) ? "1" : "0"; + } + + void writePluginCharacteristicsFile (ProjectSaver& projectSaver) + { + Project& project = projectSaver.getProject(); + + StringPairArray flags; + flags.set ("JucePlugin_Build_VST", valueToBool (shouldBuildVST (project))); + flags.set ("JucePlugin_Build_AU", valueToBool (shouldBuildAU (project))); + flags.set ("JucePlugin_Build_RTAS", valueToBool (shouldBuildRTAS (project))); + flags.set ("JucePlugin_Name", getPluginName (project).toString().quoted()); + flags.set ("JucePlugin_Desc", getPluginDesc (project).toString().quoted()); + flags.set ("JucePlugin_Manufacturer", getPluginManufacturer (project).toString().quoted()); + flags.set ("JucePlugin_ManufacturerCode", getPluginManufacturerCode (project).toString().trim().substring (0, 4).quoted ('\'')); + flags.set ("JucePlugin_PluginCode", getPluginCode (project).toString().trim().substring (0, 4).quoted ('\'')); + flags.set ("JucePlugin_MaxNumInputChannels", String (countMaxPluginChannels (getPluginChannelConfigs (project).toString(), true))); + flags.set ("JucePlugin_MaxNumOutputChannels", String (countMaxPluginChannels (getPluginChannelConfigs (project).toString(), false))); + flags.set ("JucePlugin_PreferredChannelConfigurations", getPluginChannelConfigs (project).toString()); + flags.set ("JucePlugin_IsSynth", valueToBool (getPluginIsSynth (project))); + flags.set ("JucePlugin_WantsMidiInput", valueToBool (getPluginWantsMidiInput (project))); + flags.set ("JucePlugin_ProducesMidiOutput", valueToBool (getPluginProducesMidiOut (project))); + flags.set ("JucePlugin_SilenceInProducesSilenceOut", valueToBool (getPluginSilenceInProducesSilenceOut (project))); + flags.set ("JucePlugin_TailLengthSeconds", String (static_cast (getPluginTailLengthSeconds (project).getValue()))); + flags.set ("JucePlugin_EditorRequiresKeyboardFocus", valueToBool (getPluginEditorNeedsKeyFocus (project))); + flags.set ("JucePlugin_VersionCode", project.getVersionAsHex()); + flags.set ("JucePlugin_VersionString", project.getVersion().toString().quoted()); + flags.set ("JucePlugin_VSTUniqueID", "JucePlugin_PluginCode"); + flags.set ("JucePlugin_VSTCategory", static_cast (getPluginIsSynth (project).getValue()) ? "kPlugCategSynth" : "kPlugCategEffect"); + flags.set ("JucePlugin_AUMainType", static_cast (getPluginIsSynth (project).getValue()) ? "kAudioUnitType_MusicDevice" : "kAudioUnitType_Effect"); + flags.set ("JucePlugin_AUSubType", "JucePlugin_PluginCode"); + flags.set ("JucePlugin_AUExportPrefix", getPluginAUExportPrefix (project).toString()); + flags.set ("JucePlugin_AUExportPrefixQuoted", getPluginAUExportPrefix (project).toString().quoted()); + flags.set ("JucePlugin_AUManufacturerCode", "JucePlugin_ManufacturerCode"); + flags.set ("JucePlugin_CFBundleIdentifier", project.getBundleIdentifier().toString()); + flags.set ("JucePlugin_AUCocoaViewClassName", getPluginAUCocoaViewClassName (project).toString()); + flags.set ("JucePlugin_RTASCategory", getPluginRTASCategoryCode (project)); + flags.set ("JucePlugin_RTASManufacturerCode", "JucePlugin_ManufacturerCode"); + flags.set ("JucePlugin_RTASProductId", "JucePlugin_PluginCode"); + + MemoryOutputStream mem; + + mem << "//==============================================================================" << newLine + << "// Audio plugin settings.." << newLine + << newLine; + + for (int i = 0; i < flags.size(); ++i) + { + mem << "#ifndef " << flags.getAllKeys()[i] << newLine + << " #define " << flags.getAllKeys()[i].paddedRight (' ', 32) << " " + << flags.getAllValues()[i] << newLine + << "#endif" << newLine; + } + + projectSaver.setExtraAppConfigFileContent (mem.toString()); + } +} + +//============================================================================== +namespace VSTHelpers +{ + static Value getVSTFolder (const ProjectExporter& exporter) { return exporter.getSetting (Ids::vstFolder); } + + static void addVSTFolderToPath (const ProjectExporter& exporter, StringArray& searchPaths) + { + const String vstFolder (getVSTFolder (exporter).toString()); + + if (vstFolder.isNotEmpty()) + { + RelativePath path (exporter.rebaseFromProjectFolderToBuildTarget (RelativePath (vstFolder, RelativePath::projectFolder))); + + if (exporter.isVisualStudio()) + searchPaths.add (path.toWindowsStyle()); + else if (exporter.isLinux() || exporter.isXcode()) + searchPaths.insert (0, path.toUnixStyle()); + } + } + + static void createVSTPathEditor (const ProjectExporter& exporter, PropertyListBuilder& props) + { + props.add (new TextPropertyComponent (getVSTFolder (exporter), "VST Folder", 1024, false), + "If you're building a VST, this must be the folder containing the VST SDK. This should be an absolute path."); + } + + static void fixMissingVSTValues (const ProjectExporter& exporter) + { + if (getVSTFolder(exporter).toString().isEmpty()) + getVSTFolder(exporter) = (exporter.isVisualStudio() ? "c:\\SDKs\\vstsdk2.4" + : "~/SDKs/vstsdk2.4"); + } + + static void prepareExporter (ProjectExporter& exporter, ProjectSaver& projectSaver) + { + fixMissingVSTValues (exporter); + writePluginCharacteristicsFile (projectSaver); + + exporter.makefileTargetSuffix = ".so"; + + Project::Item group (Project::Item::createGroup (const_cast (exporter).getProject(), + "Juce VST Wrapper", "__jucevstfiles")); + + RelativePath juceWrapperFolder (exporter.getProject().getGeneratedCodeFolder(), + exporter.getTargetFolder(), RelativePath::buildTargetFolder); + + addVSTFolderToPath (exporter, exporter.extraSearchPaths); + + if (exporter.isVisualStudio()) + exporter.extraSearchPaths.add (juceWrapperFolder.toWindowsStyle()); + else if (exporter.isLinux()) + exporter.extraSearchPaths.add (juceWrapperFolder.toUnixStyle()); + } + + static void createPropertyEditors (const ProjectExporter& exporter, PropertyListBuilder& props) + { + fixMissingVSTValues (exporter); + createVSTPathEditor (exporter, props); + } +} + +//============================================================================== +namespace RTASHelpers +{ + static Value getRTASFolder (const ProjectExporter& exporter) { return exporter.getSetting (Ids::rtasFolder); } + + static void fixMissingRTASValues (const ProjectExporter& exporter) + { + if (getRTASFolder (exporter).toString().isEmpty()) + { + if (exporter.isVisualStudio()) + getRTASFolder (exporter) = "c:\\SDKs\\PT_80_SDK"; + else + getRTASFolder (exporter) = "~/SDKs/PT_80_SDK"; + } + } + + static void addExtraSearchPaths (ProjectExporter& exporter) + { + RelativePath rtasFolder (getRTASFolder (exporter).toString(), RelativePath::projectFolder); + + if (exporter.isVisualStudio()) + { + RelativePath juceWrapperFolder (exporter.getProject().getGeneratedCodeFolder(), + exporter.getTargetFolder(), RelativePath::buildTargetFolder); + + exporter.extraSearchPaths.add (juceWrapperFolder.toWindowsStyle()); + + const char* p[] = { "AlturaPorts/TDMPlugins/PluginLibrary/EffectClasses", + "AlturaPorts/TDMPlugins/PluginLibrary/ProcessClasses", + "AlturaPorts/TDMPlugins/PluginLibrary/ProcessClasses/Interfaces", + "AlturaPorts/TDMPlugins/PluginLibrary/Utilities", + "AlturaPorts/TDMPlugins/PluginLibrary/RTASP_Adapt", + "AlturaPorts/TDMPlugins/PluginLibrary/CoreClasses", + "AlturaPorts/TDMPlugins/PluginLibrary/Controls", + "AlturaPorts/TDMPlugins/PluginLibrary/Meters", + "AlturaPorts/TDMPlugins/PluginLibrary/ViewClasses", + "AlturaPorts/TDMPlugins/PluginLibrary/DSPClasses", + "AlturaPorts/TDMPlugins/PluginLibrary/Interfaces", + "AlturaPorts/TDMPlugins/common", + "AlturaPorts/TDMPlugins/common/Platform", + "AlturaPorts/TDMPlugins/SignalProcessing/Public", + "AlturaPorts/TDMPlugIns/DSPManager/Interfaces", + "AlturaPorts/SADriver/Interfaces", + "AlturaPorts/DigiPublic/Interfaces", + "AlturaPorts/Fic/Interfaces/DAEClient", + "AlturaPorts/NewFileLibs/Cmn", + "AlturaPorts/NewFileLibs/DOA", + "AlturaPorts/AlturaSource/PPC_H", + "AlturaPorts/AlturaSource/AppSupport", + "AvidCode/AVX2sdk/AVX/avx2/avx2sdk/inc", + "xplat/AVX/avx2/avx2sdk/inc" }; + + for (int i = 0; i < numElementsInArray (p); ++i) + exporter.addToExtraSearchPaths (rtasFolder.getChildFile (p[i])); + } + else if (exporter.isXcode()) + { + exporter.extraSearchPaths.add ("/Developer/Headers/FlatCarbon"); + + const char* p[] = { "AlturaPorts/TDMPlugIns/PlugInLibrary/Controls", + "AlturaPorts/TDMPlugIns/PlugInLibrary/CoreClasses", + "AlturaPorts/TDMPlugIns/PlugInLibrary/DSPClasses", + "AlturaPorts/TDMPlugIns/PlugInLibrary/EffectClasses", + "AlturaPorts/TDMPlugIns/PlugInLibrary/MacBuild", + "AlturaPorts/TDMPlugIns/PlugInLibrary/Meters", + "AlturaPorts/TDMPlugIns/PlugInLibrary/ProcessClasses", + "AlturaPorts/TDMPlugIns/PlugInLibrary/ProcessClasses/Interfaces", + "AlturaPorts/TDMPlugIns/PlugInLibrary/RTASP_Adapt", + "AlturaPorts/TDMPlugIns/PlugInLibrary/Utilities", + "AlturaPorts/TDMPlugIns/PlugInLibrary/ViewClasses", + "AlturaPorts/TDMPlugIns/DSPManager/**", + "AlturaPorts/TDMPlugIns/SupplementalPlugInLib/Encryption", + "AlturaPorts/TDMPlugIns/SupplementalPlugInLib/GraphicsExtensions", + "AlturaPorts/TDMPlugIns/common/**", + "AlturaPorts/TDMPlugIns/common/PI_LibInterface", + "AlturaPorts/TDMPlugIns/PACEProtection/**", + "AlturaPorts/TDMPlugIns/SignalProcessing/**", + "AlturaPorts/OMS/Headers", + "AlturaPorts/Fic/Interfaces/**", + "AlturaPorts/Fic/Source/SignalNets", + "AlturaPorts/DSIPublicInterface/PublicHeaders", + "DAEWin/Include", + "AlturaPorts/DigiPublic/Interfaces", + "AlturaPorts/DigiPublic", + "AlturaPorts/NewFileLibs/DOA", + "AlturaPorts/NewFileLibs/Cmn", + "xplat/AVX/avx2/avx2sdk/inc", + "xplat/AVX/avx2/avx2sdk/utils" }; + + for (int i = 0; i < numElementsInArray (p); ++i) + exporter.addToExtraSearchPaths (rtasFolder.getChildFile (p[i])); + } + } + + static void prepareExporter (ProjectExporter& exporter, ProjectSaver& projectSaver, const File& moduleFolder) + { + fixMissingRTASValues (exporter); + + exporter.xcodeCanUseDwarf = false; + + exporter.msvcTargetSuffix = ".dpm"; + exporter.msvcNeedsDLLRuntimeLib = true; + + RelativePath rtasFolder (getRTASFolder (exporter).toString(), RelativePath::projectFolder); + exporter.msvcExtraPreprocessorDefs.set ("JucePlugin_WinBag_path", CodeHelpers::addEscapeChars (rtasFolder.getChildFile ("WinBag") + .toWindowsStyle().quoted())); + + String msvcPathToRTASFolder (exporter.getJucePathFromTargetFolder() + .getChildFile ("modules/juce_audio_plugin_client/RTAS") + .toWindowsStyle() + "\\"); + + exporter.msvcDelayLoadedDLLs = "DAE.dll; DigiExt.dll; DSI.dll; PluginLib.dll; DSPManager.dll"; + + for (ProjectExporter::ConfigIterator config (exporter); config.next();) + { + config->msvcExtraLinkerOptions = "/FORCE:multiple"; + config->msvcModuleDefinitionFile = msvcPathToRTASFolder + "juce_RTAS_WinExports.def"; + + if (config->msvcPostBuildCommand.isEmpty()) + config->msvcPostBuildCommand = "copy /Y \"" + msvcPathToRTASFolder + "juce_RTAS_WinResources.rsr" + + "\" \"$(TargetPath)\".rsr"; + } + + exporter.xcodeExtraLibrariesDebug.add (rtasFolder.getChildFile ("MacBag/Libs/Debug/libPluginLibrary.a")); + exporter.xcodeExtraLibrariesRelease.add (rtasFolder.getChildFile ("MacBag/Libs/Release/libPluginLibrary.a")); + + writePluginCharacteristicsFile (projectSaver); + + addExtraSearchPaths (exporter); + } + + static void createPropertyEditors (const ProjectExporter& exporter, PropertyListBuilder& props) + { + if (exporter.isXcode() || exporter.isVisualStudio()) + { + fixMissingRTASValues (exporter); + + props.add (new TextPropertyComponent (getRTASFolder (exporter), "RTAS Folder", 1024, false), + "If you're building an RTAS, this must be the folder containing the RTAS SDK. This should be an absolute path."); + } + } +} + +//============================================================================== +namespace AUHelpers +{ + static void prepareExporter (ProjectExporter& exporter, ProjectSaver& projectSaver) + { + writePluginCharacteristicsFile (projectSaver); + + if (exporter.isXcode()) + { + exporter.extraSearchPaths.add ("$(DEVELOPER_DIR)/Extras/CoreAudio/PublicUtility"); + exporter.extraSearchPaths.add ("$(DEVELOPER_DIR)/Extras/CoreAudio/AudioUnits/AUPublic/Utility"); + + exporter.xcodeFrameworks.addTokens ("AudioUnit CoreAudioKit", false); + + Project::Item subGroup (projectSaver.getGeneratedCodeGroup().addNewSubGroup ("Juce AU Wrapper", -1)); + subGroup.setID ("__juceappleaufiles"); + + { + #define JUCE_AU_PUBLICUTILITY "${DEVELOPER_DIR}/Extras/CoreAudio/PublicUtility/" + #define JUCE_AU_PUBLIC "${DEVELOPER_DIR}/Extras/CoreAudio/AudioUnits/AUPublic/" + + const char* appleAUFiles[] = { JUCE_AU_PUBLICUTILITY "CADebugMacros.h", + JUCE_AU_PUBLICUTILITY "CAAUParameter.cpp", + JUCE_AU_PUBLICUTILITY "CAAUParameter.h", + JUCE_AU_PUBLICUTILITY "CAAudioChannelLayout.cpp", + JUCE_AU_PUBLICUTILITY "CAAudioChannelLayout.h", + JUCE_AU_PUBLICUTILITY "CAMutex.cpp", + JUCE_AU_PUBLICUTILITY "CAMutex.h", + JUCE_AU_PUBLICUTILITY "CAStreamBasicDescription.cpp", + JUCE_AU_PUBLICUTILITY "CAStreamBasicDescription.h", + JUCE_AU_PUBLICUTILITY "CAVectorUnitTypes.h", + JUCE_AU_PUBLICUTILITY "CAVectorUnit.cpp", + JUCE_AU_PUBLICUTILITY "CAVectorUnit.h", + JUCE_AU_PUBLIC "AUViewBase/AUViewLocalizedStringKeys.h", + JUCE_AU_PUBLIC "AUCarbonViewBase/AUCarbonViewDispatch.cpp", + JUCE_AU_PUBLIC "AUCarbonViewBase/AUCarbonViewControl.cpp", + JUCE_AU_PUBLIC "AUCarbonViewBase/AUCarbonViewControl.h", + JUCE_AU_PUBLIC "AUCarbonViewBase/CarbonEventHandler.cpp", + JUCE_AU_PUBLIC "AUCarbonViewBase/CarbonEventHandler.h", + JUCE_AU_PUBLIC "AUCarbonViewBase/AUCarbonViewBase.cpp", + JUCE_AU_PUBLIC "AUCarbonViewBase/AUCarbonViewBase.h", + JUCE_AU_PUBLIC "AUBase/AUBase.cpp", + JUCE_AU_PUBLIC "AUBase/AUBase.h", + JUCE_AU_PUBLIC "AUBase/AUDispatch.cpp", + JUCE_AU_PUBLIC "AUBase/AUDispatch.h", + JUCE_AU_PUBLIC "AUBase/AUInputElement.cpp", + JUCE_AU_PUBLIC "AUBase/AUInputElement.h", + JUCE_AU_PUBLIC "AUBase/AUOutputElement.cpp", + JUCE_AU_PUBLIC "AUBase/AUOutputElement.h", + JUCE_AU_PUBLIC "AUBase/AUResources.r", + JUCE_AU_PUBLIC "AUBase/AUScopeElement.cpp", + JUCE_AU_PUBLIC "AUBase/AUScopeElement.h", + JUCE_AU_PUBLIC "AUBase/ComponentBase.cpp", + JUCE_AU_PUBLIC "AUBase/ComponentBase.h", + JUCE_AU_PUBLIC "OtherBases/AUMIDIBase.cpp", + JUCE_AU_PUBLIC "OtherBases/AUMIDIBase.h", + JUCE_AU_PUBLIC "OtherBases/AUMIDIEffectBase.cpp", + JUCE_AU_PUBLIC "OtherBases/AUMIDIEffectBase.h", + JUCE_AU_PUBLIC "OtherBases/AUOutputBase.cpp", + JUCE_AU_PUBLIC "OtherBases/AUOutputBase.h", + JUCE_AU_PUBLIC "OtherBases/MusicDeviceBase.cpp", + JUCE_AU_PUBLIC "OtherBases/MusicDeviceBase.h", + JUCE_AU_PUBLIC "OtherBases/AUEffectBase.cpp", + JUCE_AU_PUBLIC "OtherBases/AUEffectBase.h", + JUCE_AU_PUBLIC "Utility/AUBuffer.cpp", + JUCE_AU_PUBLIC "Utility/AUBuffer.h", + JUCE_AU_PUBLIC "Utility/AUInputFormatConverter.h", + JUCE_AU_PUBLIC "Utility/AUSilentTimeout.h", + JUCE_AU_PUBLIC "Utility/AUTimestampGenerator.h", 0 }; + + for (const char** f = appleAUFiles; *f != 0; ++f) + { + const RelativePath file (*f, RelativePath::projectFolder); + subGroup.addRelativeFile (file, -1, file.hasFileExtension ("cpp;mm")); + subGroup.getChild (subGroup.getNumChildren() - 1).getShouldInhibitWarningsValue() = true; + } + } + } + } +} + +#endif // __JUCER_AUDIOPLUGINMODULE_JUCEHEADER__ diff --git a/extras/Introjucer/Source/Project/jucer_GroupInformationComponent.cpp b/extras/Introjucer/Source/Project/jucer_GroupInformationComponent.cpp index 0b09ee0004..e9a90f7601 100644 --- a/extras/Introjucer/Source/Project/jucer_GroupInformationComponent.cpp +++ b/extras/Introjucer/Source/Project/jucer_GroupInformationComponent.cpp @@ -2,7 +2,7 @@ ============================================================================== This file is part of the JUCE library - "Jules' Utility Class Extensions" - Copyright 2004-10 by Raw Material Software Ltd. + Copyright 2004-11 by Raw Material Software Ltd. ------------------------------------------------------------------------------ @@ -34,12 +34,12 @@ GroupInformationComponent::GroupInformationComponent (const Project::Item& item_ addAndMakeVisible (&list); list.updateContent(); list.setRowHeight (20); - item.getNode().addListener (this); + item.state.addListener (this); } GroupInformationComponent::~GroupInformationComponent() { - item.getNode().removeListener (this); + item.state.removeListener (this); } void GroupInformationComponent::resized() diff --git a/extras/Introjucer/Source/Project/jucer_GroupInformationComponent.h b/extras/Introjucer/Source/Project/jucer_GroupInformationComponent.h index 1b4141a14c..d52227b6e4 100644 --- a/extras/Introjucer/Source/Project/jucer_GroupInformationComponent.h +++ b/extras/Introjucer/Source/Project/jucer_GroupInformationComponent.h @@ -2,7 +2,7 @@ ============================================================================== This file is part of the JUCE library - "Jules' Utility Class Extensions" - Copyright 2004-10 by Raw Material Software Ltd. + Copyright 2004-11 by Raw Material Software Ltd. ------------------------------------------------------------------------------ diff --git a/extras/Introjucer/Source/Project/jucer_Module.cpp b/extras/Introjucer/Source/Project/jucer_Module.cpp new file mode 100644 index 0000000000..252e7e9562 --- /dev/null +++ b/extras/Introjucer/Source/Project/jucer_Module.cpp @@ -0,0 +1,675 @@ +/* + ============================================================================== + + This file is part of the JUCE library - "Jules' Utility Class Extensions" + Copyright 2004-11 by Raw Material Software Ltd. + + ------------------------------------------------------------------------------ + + JUCE can be redistributed and/or modified under the terms of the GNU General + Public License (Version 2), as published by the Free Software Foundation. + A copy of the license is included in the JUCE distribution, or can be found + online at www.gnu.org/licenses. + + JUCE is distributed in the hope that it will be useful, but WITHOUT ANY + WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR + A PARTICULAR PURPOSE. See the GNU General Public License for more details. + + ------------------------------------------------------------------------------ + + To release a closed-source product which uses JUCE, commercial licenses are + available: visit www.rawmaterialsoftware.com/juce for more information. + + ============================================================================== +*/ + +#include "jucer_Module.h" +#include "jucer_ProjectType.h" +#include "../Project Saving/jucer_ProjectExporter.h" +#include "../Project Saving/jucer_ProjectSaver.h" +#include "jucer_AudioPluginModule.h" + + +//============================================================================== +ModuleList::ModuleList() +{ +} + +ModuleList::ModuleList (const ModuleList& other) + : moduleFolder (other.moduleFolder) +{ + modules.addCopiesOf (other.modules); +} + +ModuleList& ModuleList::operator= (const ModuleList& other) +{ + moduleFolder = other.moduleFolder; + modules.clear(); + modules.addCopiesOf (other.modules); + + return *this; +} + +bool ModuleList::operator== (const ModuleList& other) const +{ + if (modules.size() != other.modules.size()) + return false; + + for (int i = modules.size(); --i >= 0;) + { + const Module* m1 = modules.getUnchecked(i); + const Module* m2 = other.findModuleInfo (m1->uid); + + if (m2 == nullptr || *m1 != *m2) + return false; + } + + return true; +} + + +bool ModuleList::isLocalModulesFolderValid() +{ + return isModulesFolder (getModulesFolderForJuceOrModulesFolder (getLocalModulesFolder (nullptr))); +} + +bool ModuleList::isJuceFolder (const File& folder) +{ + return folder.getFileName().containsIgnoreCase ("juce") + && isModulesFolder (folder.getChildFile ("modules")); +} + +bool ModuleList::isModulesFolder (const File& folder) +{ + return folder.getFileName().equalsIgnoreCase ("modules") + && folder.isDirectory(); +} + +bool ModuleList::isJuceOrModulesFolder (const File& folder) +{ + return isJuceFolder (folder) || isModulesFolder (folder); +} + +File ModuleList::getModulesFolderForJuceOrModulesFolder (const File& f) +{ + if (f.getFileName() != "modules" && f.isDirectory() && f.getChildFile ("modules").isDirectory()) + return f.getChildFile ("modules"); + + return f; +} + +File ModuleList::getDefaultModulesFolder (Project* project) +{ + if (project != nullptr) + { + ScopedPointer exp (ProjectExporter::createPlatformDefaultExporter (*project)); + + if (exp != nullptr) + { + File f (project->resolveFilename (exp->getJuceFolder().toString())); + f = getModulesFolderForJuceOrModulesFolder (f); + + if (ModuleList::isModulesFolder (f)) + return f; + } + } + + #if JUCE_WINDOWS + return File::getSpecialLocation (File::userDocumentsDirectory) + #else + return File::getSpecialLocation (File::userHomeDirectory) + #endif + .getChildFile ("juce") + .getChildFile ("modules"); +} + +File ModuleList::getLocalModulesFolder (Project* project) +{ + File defaultJuceFolder (getDefaultModulesFolder (project)); + + File f (StoredSettings::getInstance()->getProps().getValue ("lastJuceFolder", defaultJuceFolder.getFullPathName())); + f = getModulesFolderForJuceOrModulesFolder (f); + + if ((! ModuleList::isModulesFolder (f)) && ModuleList::isModulesFolder (defaultJuceFolder)) + f = defaultJuceFolder; + + return f; +} + +File ModuleList::getModuleFolder (const String& uid) const +{ + return getModulesFolder().getChildFile (uid); +} + +void ModuleList::setLocalModulesFolder (const File& file) +{ + //jassert (FileHelpers::isJuceFolder (file)); + StoredSettings::getInstance()->getProps().setValue ("lastJuceFolder", file.getFullPathName()); +} + +struct ModuleSorter +{ + static int compareElements (const ModuleList::Module* m1, const ModuleList::Module* m2) + { + return m1->uid.compareIgnoreCase (m2->uid); + } +}; + +void ModuleList::sort() +{ + ModuleSorter sorter; + modules.sort (sorter); +} + +void ModuleList::rescan() +{ + rescan (moduleFolder); +} + +void ModuleList::rescan (const File& newModulesFolder) +{ + modules.clear(); + moduleFolder = getModulesFolderForJuceOrModulesFolder (newModulesFolder); + + if (moduleFolder.isDirectory()) + { + DirectoryIterator iter (moduleFolder, false, "*", File::findDirectories); + + while (iter.next()) + { + const File moduleDef (iter.getFile().getChildFile (LibraryModule::getInfoFileName())); + + if (moduleDef.exists()) + { + LibraryModule m (moduleDef); + jassert (m.isValid()); + + if (m.isValid()) + { + Module* info = new Module(); + modules.add (info); + + info->uid = m.getID(); + info->version = m.getVersion(); + info->name = m.moduleInfo ["name"]; + info->description = m.moduleInfo ["description"]; + info->file = moduleDef; + } + } + } + } + + sort(); +} + +bool ModuleList::loadFromWebsite() +{ + modules.clear(); + + URL baseURL ("http://www.rawmaterialsoftware.com/juce/modules"); + URL url (baseURL.getChildURL ("modulelist.php")); + + var infoList (JSON::parse (url.readEntireTextStream (false))); + + if (infoList.isArray()) + { + const Array* moduleList = infoList.getArray(); + + for (int i = 0; i < moduleList->size(); ++i) + { + const var& m = moduleList->getReference(i); + const String file (m ["file"].toString()); + + if (file.isNotEmpty()) + { + var moduleInfo (m ["info"]); + LibraryModule lm (moduleInfo); + + if (lm.isValid()) + { + Module* info = new Module(); + modules.add (info); + + info->uid = lm.getID(); + info->version = lm.getVersion(); + info->name = lm.getName(); + info->description = lm.getDescription(); + info->url = baseURL.getChildURL (file); + } + } + } + } + + sort(); + return infoList.isArray(); +} + +LibraryModule* ModuleList::Module::create() const +{ + return new LibraryModule (file); +} + +bool ModuleList::Module::operator== (const Module& other) const +{ + return uid == other.uid + && version == other.version + && name == other.name + && description == other.description + && file == other.file + && url == other.url; +} + +bool ModuleList::Module::operator!= (const Module& other) const +{ + return ! operator== (other); +} + +LibraryModule* ModuleList::loadModule (const String& uid) const +{ + const Module* const m = findModuleInfo (uid); + + return m != nullptr ? m->create() : nullptr; +} + +const ModuleList::Module* ModuleList::findModuleInfo (const String& uid) const +{ + for (int i = modules.size(); --i >= 0;) + if (modules.getUnchecked(i)->uid == uid) + return modules.getUnchecked(i); + + return nullptr; +} + +void ModuleList::getDependencies (const String& moduleID, StringArray& dependencies) const +{ + ScopedPointer m (loadModule (moduleID)); + + if (m != nullptr) + { + const var depsArray (m->moduleInfo ["dependencies"]); + const Array* const deps = depsArray.getArray(); + + if (deps != nullptr) + { + for (int i = 0; i < deps->size(); ++i) + { + const var& d = deps->getReference(i); + + String uid (d ["id"].toString()); + String version (d ["version"].toString()); + + if (! dependencies.contains (uid, true)) + { + dependencies.add (uid); + getDependencies (uid, dependencies); + } + } + } + } +} + +void ModuleList::createDependencies (const String& moduleID, OwnedArray& modules) const +{ + ScopedPointer m (loadModule (moduleID)); + + if (m != nullptr) + { + var depsArray (m->moduleInfo ["dependencies"]); + const Array* const deps = depsArray.getArray(); + + for (int i = 0; i < deps->size(); ++i) + { + const var& d = deps->getReference(i); + + String uid (d ["id"].toString()); + String version (d ["version"].toString()); + + //xxx to do - also need to find version conflicts + jassertfalse + + } + } +} + +StringArray ModuleList::getExtraDependenciesNeeded (Project& project, const ModuleList::Module& m) +{ + StringArray dependencies, extraDepsNeeded; + getDependencies (m.uid, dependencies); + + for (int i = 0; i < dependencies.size(); ++i) + if ((! project.isModuleEnabled (dependencies[i])) && dependencies[i] != m.uid) + extraDepsNeeded.add (dependencies[i]); + + return extraDepsNeeded; +} + +//============================================================================== +LibraryModule::LibraryModule (const File& file) + : moduleInfo (JSON::parse (file)), + moduleFile (file), + moduleFolder (file.getParentDirectory()) +{ + jassert (isValid()); +} + +LibraryModule::LibraryModule (const var& moduleInfo_) + : moduleInfo (moduleInfo_) +{ +} + +bool LibraryModule::isValid() const { return getID().isNotEmpty(); } + +bool LibraryModule::isPluginClient() const { return getID() == "juce_audio_plugin_client"; } +bool LibraryModule::isAUPluginHost (const Project& project) const { return getID() == "juce_audio_processors" && project.isConfigFlagEnabled ("JUCE_PLUGINHOST_AU"); } +bool LibraryModule::isVSTPluginHost (const Project& project) const { return getID() == "juce_audio_processors" && project.isConfigFlagEnabled ("JUCE_PLUGINHOST_VST"); } + +File LibraryModule::getLocalIncludeFolder (ProjectSaver& projectSaver) const +{ + return projectSaver.getGeneratedCodeFolder().getChildFile ("modules").getChildFile (getID()); +} + +File LibraryModule::getInclude (const File& folder) const +{ + return folder.getChildFile (moduleInfo ["include"]); +} + +RelativePath LibraryModule::getModuleRelativeToProject (ProjectExporter& exporter) const +{ + RelativePath p (exporter.getJuceFolder().toString(), RelativePath::projectFolder); + if (p.getFileName() != "modules") + p = p.getChildFile ("modules"); + + return p.getChildFile (getID()); +} + +RelativePath LibraryModule::getModuleOrLocalCopyRelativeToProject (ProjectExporter& exporter, const File& localModuleFolder) const +{ + if (exporter.getProject().shouldCopyModuleFilesLocally (getID()).getValue()) + return RelativePath (exporter.getProject().getRelativePathForFile (localModuleFolder), RelativePath::projectFolder); + + return getModuleRelativeToProject (exporter); +} + +//============================================================================== +void LibraryModule::writeIncludes (ProjectSaver& projectSaver, OutputStream& out) +{ + const File localModuleFolder (getLocalIncludeFolder (projectSaver)); + const File localHeader (getInclude (localModuleFolder)); + + if (projectSaver.getProject().shouldCopyModuleFilesLocally (getID()).getValue()) + { + moduleFolder.copyDirectoryTo (localModuleFolder); + } + else + { + localModuleFolder.createDirectory(); + createLocalHeaderWrapper (projectSaver, getInclude (moduleFolder), localHeader); + } + + out << CodeHelpers::createIncludeStatement (localHeader, projectSaver.getGeneratedCodeFolder().getChildFile ("AppConfig.h")) << newLine; +} + +static void writeGuardedInclude (OutputStream& out, StringArray paths, StringArray guards) +{ + StringArray uniquePaths (paths); + uniquePaths.removeDuplicates (false); + + if (uniquePaths.size() == 1) + { + out << "#include " << paths[0] << newLine; + } + else + { + int i = paths.size(); + for (; --i >= 0;) + { + for (int j = i; --j >= 0;) + { + if (paths[i] == paths[j] && guards[i] == guards[j]) + { + paths.remove (i); + guards.remove (i); + } + } + } + + for (i = 0; i < paths.size(); ++i) + { + out << (i == 0 ? "#if " : "#elif ") << guards[i] << newLine + << " #include " << paths[i] << newLine; + } + + out << "#else" << newLine + << " #error \"This file is designed to be used in an Introjucer-generated project!\"" << newLine + << "#endif" << newLine; + } +} + +void LibraryModule::createLocalHeaderWrapper (ProjectSaver& projectSaver, const File& originalHeader, const File& localHeader) const +{ + Project& project = projectSaver.getProject(); + + MemoryOutputStream out; + + out << "// This is an auto-generated file to redirect any included" << newLine + << "// module headers to the correct external folder." << newLine + << newLine; + + StringArray paths, guards; + + for (Project::ExporterIterator exporter (project); exporter.next();) + { + const RelativePath headerFromProject (getModuleRelativeToProject (*exporter) + .getChildFile (originalHeader.getFileName())); + + const RelativePath fileFromHere (headerFromProject.rebased (project.getFile().getParentDirectory(), + localHeader.getParentDirectory(), RelativePath::unknown)); + + paths.add (fileFromHere.toUnixStyle().quoted()); + guards.add ("defined (" + exporter->getExporterIdentifierMacro() + ")"); + } + + writeGuardedInclude (out, paths, guards); + out << newLine; + + projectSaver.replaceFileIfDifferent (localHeader, out); +} + +//============================================================================== +void LibraryModule::prepareExporter (ProjectExporter& exporter, ProjectSaver& projectSaver) const +{ + Project& project = exporter.getProject(); + + File localFolder (moduleFolder); + if (project.shouldCopyModuleFilesLocally (getID()).getValue()) + localFolder = getLocalIncludeFolder (projectSaver); + + { + Array compiled; + findAndAddCompiledCode (exporter, projectSaver, localFolder, compiled); + + if (project.shouldShowAllModuleFilesInProject (getID()).getValue()) + addBrowsableCode (exporter, compiled, localFolder); + } + + if (isVSTPluginHost (project)) + VSTHelpers::addVSTFolderToPath (exporter, exporter.extraSearchPaths); + + if (exporter.isXcode()) + { + if (isAUPluginHost (project)) + exporter.xcodeFrameworks.addTokens ("AudioUnit CoreAudioKit", false); + + const String frameworks (moduleInfo [exporter.isOSX() ? "OSXFrameworks" : "iOSFrameworks"].toString()); + exporter.xcodeFrameworks.addTokens (frameworks, ", ", String::empty); + } + + if (isPluginClient()) + { + if (shouldBuildVST (project).getValue()) VSTHelpers::prepareExporter (exporter, projectSaver); + if (shouldBuildRTAS (project).getValue()) RTASHelpers::prepareExporter (exporter, projectSaver, localFolder); + if (shouldBuildAU (project).getValue()) AUHelpers::prepareExporter (exporter, projectSaver); + } +} + +void LibraryModule::createPropertyEditors (const ProjectExporter& exporter, PropertyListBuilder& props) const +{ + if (isVSTPluginHost (exporter.getProject())) + VSTHelpers::createVSTPathEditor (exporter, props); + + if (isPluginClient()) + { + if (shouldBuildVST (exporter.getProject()).getValue()) VSTHelpers::createPropertyEditors (exporter, props); + if (shouldBuildRTAS (exporter.getProject()).getValue()) RTASHelpers::createPropertyEditors (exporter, props); + } +} + +void LibraryModule::getConfigFlags (Project& project, OwnedArray& flags) const +{ + const File header (getInclude (moduleFolder)); + jassert (header.exists()); + + StringArray lines; + header.readLines (lines); + + for (int i = 0; i < lines.size(); ++i) + { + String line (lines[i].trim()); + + if (line.startsWith ("/**") && line.containsIgnoreCase ("Config:")) + { + ScopedPointer config (new Project::ConfigFlag()); + config->sourceModuleID = getID(); + config->symbol = line.fromFirstOccurrenceOf (":", false, false).trim(); + + if (config->symbol.length() > 2) + { + ++i; + + while (! (lines[i].contains ("*/") || lines[i].contains ("@see"))) + { + if (lines[i].trim().isNotEmpty()) + config->description = config->description.trim() + " " + lines[i].trim(); + + ++i; + } + + config->description = config->description.upToFirstOccurrenceOf ("*/", false, false); + config->value.referTo (project.getConfigFlag (config->symbol)); + flags.add (config.release()); + } + } + } +} + +//============================================================================== +bool LibraryModule::fileTargetMatches (ProjectExporter& exporter, const String& target) +{ + if (target.startsWithChar ('!')) + return ! fileTargetMatches (exporter, target.substring (1).trim()); + + if (target == "xcode") return exporter.isXcode(); + if (target == "msvc") return exporter.isVisualStudio(); + if (target == "linux") return exporter.isLinux(); + + return true; +} + +void LibraryModule::findWildcardMatches (const File& localModuleFolder, const String& wildcardPath, Array& result) const +{ + String path (wildcardPath.upToLastOccurrenceOf ("/", false, false)); + String wildCard (wildcardPath.fromLastOccurrenceOf ("/", false, false)); + + Array tempList; + FileSorter sorter; + + DirectoryIterator iter (localModuleFolder.getChildFile (path), false, wildCard); + while (iter.next()) + if (! iter.getFile().isHidden()) + tempList.addSorted (sorter, iter.getFile()); + + result.addArray (tempList); +} + +void LibraryModule::findAndAddCompiledCode (ProjectExporter& exporter, ProjectSaver& projectSaver, + const File& localModuleFolder, Array& result) const +{ + const var compileArray (moduleInfo ["compile"]); // careful to keep this alive while the array is in use! + const Array* const files = compileArray.getArray(); + + if (files != nullptr) + { + for (int i = 0; i < files->size(); ++i) + { + const var& file = files->getReference(i); + const String filename (file ["file"].toString()); + + if (filename.isNotEmpty() + && fileTargetMatches (exporter, file ["target"].toString())) + { + const File compiledFile (localModuleFolder.getChildFile (filename)); + result.add (compiledFile); + + Project::Item item (projectSaver.addFileToGeneratedGroup (compiledFile)); + + if (file ["warnings"].toString().equalsIgnoreCase ("disabled")) + item.getShouldInhibitWarningsValue() = true; + + if (file ["stdcall"]) + item.getShouldUseStdCallValue() = true; + } + } + } +} + +static void addFileWithGroups (Project::Item& group, const RelativePath& file, const String& path) +{ + const int slash = path.indexOfChar (File::separator); + + if (slash >= 0) + { + const String topLevelGroup (path.substring (0, slash)); + const String remainingPath (path.substring (slash + 1)); + + Project::Item newGroup (group.getOrCreateSubGroup (topLevelGroup)); + addFileWithGroups (newGroup, file, remainingPath); + } + else + { + if (! group.containsChildForFile (file)) + group.addRelativeFile (file, -1, false); + } +} + +void LibraryModule::addBrowsableCode (ProjectExporter& exporter, const Array& compiled, const File& localModuleFolder) const +{ + if (sourceFiles.size() == 0) + { + const var filesArray (moduleInfo ["browse"]); + const Array* const files = filesArray.getArray(); + + for (int i = 0; i < files->size(); ++i) + findWildcardMatches (localModuleFolder, files->getReference(i), sourceFiles); + } + + Project::Item sourceGroup (Project::Item::createGroup (exporter.getProject(), getID(), "__mainsourcegroup" + getID())); + + const RelativePath moduleFromProject (getModuleOrLocalCopyRelativeToProject (exporter, localModuleFolder)); + + for (int i = 0; i < sourceFiles.size(); ++i) + { + const String pathWithinModule (sourceFiles.getReference(i).getRelativePathFrom (localModuleFolder)); + + // (Note: in exporters like MSVC we have to avoid adding the same file twice, even if one of those instances + // is flagged as being excluded from the build, because this overrides the other and it fails to compile) + if (exporter.canCopeWithDuplicateFiles() || ! compiled.contains (sourceFiles.getReference(i))) + addFileWithGroups (sourceGroup, + moduleFromProject.getChildFile (pathWithinModule), + pathWithinModule); + } + + sourceGroup.addFile (localModuleFolder.getChildFile (moduleFile.getRelativePathFrom (moduleFolder)), -1, false); + sourceGroup.addFile (getInclude (localModuleFolder), -1, false); + + exporter.getModulesGroup().state.addChild (sourceGroup.state.createCopy(), -1, nullptr); +} diff --git a/extras/Introjucer/Source/Project/jucer_Module.h b/extras/Introjucer/Source/Project/jucer_Module.h new file mode 100644 index 0000000000..e73e0ee7aa --- /dev/null +++ b/extras/Introjucer/Source/Project/jucer_Module.h @@ -0,0 +1,148 @@ +/* + ============================================================================== + + This file is part of the JUCE library - "Jules' Utility Class Extensions" + Copyright 2004-11 by Raw Material Software Ltd. + + ------------------------------------------------------------------------------ + + JUCE can be redistributed and/or modified under the terms of the GNU General + Public License (Version 2), as published by the Free Software Foundation. + A copy of the license is included in the JUCE distribution, or can be found + online at www.gnu.org/licenses. + + JUCE is distributed in the hope that it will be useful, but WITHOUT ANY + WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR + A PARTICULAR PURPOSE. See the GNU General Public License for more details. + + ------------------------------------------------------------------------------ + + To release a closed-source product which uses JUCE, commercial licenses are + available: visit www.rawmaterialsoftware.com/juce for more information. + + ============================================================================== +*/ + +#ifndef __JUCER_MODULE_JUCEHEADER__ +#define __JUCER_MODULE_JUCEHEADER__ + +#include "../jucer_Headers.h" +#include "jucer_Project.h" +class ProjectExporter; +class ProjectSaver; + +//============================================================================== +class LibraryModule +{ +public: + LibraryModule (const File& file); + LibraryModule (const var& moduleInfo); + + bool isValid() const; + + String getID() const { return moduleInfo ["id"].toString(); } + String getVersion() const { return moduleInfo ["version"].toString(); } + String getName() const { return moduleInfo ["name"].toString(); } + String getDescription() const { return moduleInfo ["description"].toString(); } + + void writeIncludes (ProjectSaver&, OutputStream&); + void prepareExporter (ProjectExporter&, ProjectSaver&) const; + void createPropertyEditors (const ProjectExporter&, PropertyListBuilder&) const; + void getConfigFlags (Project&, OwnedArray& flags) const; + + static String getInfoFileName() { return "juce_module_info"; } + + var moduleInfo; + +private: + File moduleFile, moduleFolder; + mutable Array sourceFiles; + + File getInclude (const File& folder) const; + File getLocalIncludeFolder (ProjectSaver& projectSaver) const; + static bool fileTargetMatches (ProjectExporter& exporter, const String& target); + + struct FileSorter + { + static int compareElements (const File& f1, const File& f2) + { + return f1.getFileName().compareIgnoreCase (f2.getFileName()); + } + }; + + void findWildcardMatches (const File& localModuleFolder, const String& wildcardPath, Array& result) const; + void findAndAddCompiledCode (ProjectExporter&, ProjectSaver&, const File& localModuleFolder, Array& result) const; + void addBrowsableCode (ProjectExporter&, const Array& compiled, const File& localModuleFolder) const; + void createLocalHeaderWrapper (ProjectSaver&, const File& originalHeader, const File& localHeader) const; + RelativePath getModuleRelativeToProject (ProjectExporter&) const; + RelativePath getModuleOrLocalCopyRelativeToProject (ProjectExporter&, const File& localModuleFolder) const; + + bool isPluginClient() const; + bool isAUPluginHost (const Project&) const; + bool isVSTPluginHost (const Project&) const; +}; + +//============================================================================== +class ModuleList +{ +public: + ModuleList(); + ModuleList (const ModuleList&); + ModuleList& operator= (const ModuleList&); + + //============================================================================== + void rescan (const File& newModulesFolder); + void rescan(); + File getModulesFolder() const { return moduleFolder; } + File getModuleFolder (const String& uid) const; + + bool loadFromWebsite(); + + LibraryModule* loadModule (const String& uid) const; + + void getDependencies (const String& moduleID, StringArray& dependencies) const; + void createDependencies (const String& moduleID, OwnedArray& modules) const; + + //============================================================================== + struct Module + { + LibraryModule* create() const; + + String uid, version, name, description; + File file; + URL url; + + bool operator== (const Module&) const; + bool operator!= (const Module&) const; + }; + + const Module* findModuleInfo (const String& uid) const; + + bool operator== (const ModuleList&) const; + + //============================================================================== + static bool isJuceFolder (const File& folder); + static bool isModulesFolder (const File& folder); + static bool isJuceOrModulesFolder (const File& folder); + + static File getDefaultModulesFolder (Project*); + static bool isLocalModulesFolderValid(); + + static File getLocalModulesFolder (Project*); + static void setLocalModulesFolder (const File& newFile); + + static File getModulesFolderForJuceOrModulesFolder (const File& f); + + StringArray getExtraDependenciesNeeded (Project&, const Module&); + + //============================================================================== + OwnedArray modules; + +private: + File moduleFolder; + + void sort(); +}; + + +#endif // __JUCER_MODULE_JUCEHEADER__ diff --git a/extras/Introjucer/Source/Project/jucer_NewFileWizard.cpp b/extras/Introjucer/Source/Project/jucer_NewFileWizard.cpp index 2c5e07b24b..95b723ebd2 100644 --- a/extras/Introjucer/Source/Project/jucer_NewFileWizard.cpp +++ b/extras/Introjucer/Source/Project/jucer_NewFileWizard.cpp @@ -2,7 +2,7 @@ ============================================================================== This file is part of the JUCE library - "Jules' Utility Class Extensions" - Copyright 2004-10 by Raw Material Software Ltd. + Copyright 2004-11 by Raw Material Software Ltd. ------------------------------------------------------------------------------ @@ -31,7 +31,7 @@ namespace { bool fillInNewCppFileTemplate (const File& file, const Project::Item& item, const char* templateName) { - String s = item.getProject().getFileTemplate (templateName) + String s = item.project.getFileTemplate (templateName) .replace ("FILENAME", file.getFileName(), false) .replace ("DATE", Time::getCurrentTime().toString (true, true, true), false) .replace ("AUTHOR", SystemStats::getFullUserName(), false) @@ -64,7 +64,7 @@ public: { if (fillInNewCppFileTemplate (newFile, parent, "jucer_NewCppFileTemplate_cpp")) { - parent.addFile (newFile, 0); + parent.addFile (newFile, 0, true); return true; } @@ -93,7 +93,7 @@ public: { if (fillInNewCppFileTemplate (newFile, parent, "jucer_NewCppFileTemplate_h")) { - parent.addFile (newFile, 0); + parent.addFile (newFile, 0, true); return true; } diff --git a/extras/Introjucer/Source/Project/jucer_NewFileWizard.h b/extras/Introjucer/Source/Project/jucer_NewFileWizard.h index 99239611c6..f207c8a639 100644 --- a/extras/Introjucer/Source/Project/jucer_NewFileWizard.h +++ b/extras/Introjucer/Source/Project/jucer_NewFileWizard.h @@ -2,7 +2,7 @@ ============================================================================== This file is part of the JUCE library - "Jules' Utility Class Extensions" - Copyright 2004-10 by Raw Material Software Ltd. + Copyright 2004-11 by Raw Material Software Ltd. ------------------------------------------------------------------------------ diff --git a/extras/Introjucer/Source/Project/jucer_NewProjectWizard.cpp b/extras/Introjucer/Source/Project/jucer_NewProjectWizard.cpp index ffbfe3ce95..079641609f 100644 --- a/extras/Introjucer/Source/Project/jucer_NewProjectWizard.cpp +++ b/extras/Introjucer/Source/Project/jucer_NewProjectWizard.cpp @@ -2,7 +2,7 @@ ============================================================================== This file is part of the JUCE library - "Jules' Utility Class Extensions" - Copyright 2004-10 by Raw Material Software Ltd. + Copyright 2004-11 by Raw Material Software Ltd. ------------------------------------------------------------------------------ @@ -25,6 +25,39 @@ #include "jucer_NewProjectWizard.h" #include "jucer_ProjectType.h" +#include "jucer_Module.h" +#include "../Project Saving/jucer_ProjectExporter.h" +#include "../Application/jucer_Application.h" +#include "../Application/jucer_MainWindow.h" + +static void createFileCreationOptionComboBox (Component& setupComp, + OwnedArray& itemsCreated, + const char** types) +{ + ComboBox* c = new ComboBox(); + itemsCreated.add (c); + setupComp.addChildAndSetID (c, "filesToCreate"); + + const char* fileOptions[] = { "Create a Main.cpp file", + "Create a Main.cpp file and a basic window", + "Don't create any files", 0 }; + + c->addItemList (StringArray (fileOptions), 1); + c->setSelectedId (1, false); + + Label* l = new Label (String::empty, "Files to Auto-Generate:"); + l->attachToComponent (c, true); + itemsCreated.add (l); + + c->setBounds ("parent.width / 2 + 160, 10, parent.width - 10, top + 22"); +} + +static void setExecutableNameForAllTargets (Project& project, const String& exeName) +{ + for (Project::ExporterIterator exporter (project); exporter.next();) + for (ProjectExporter::ConfigIterator config (*exporter); config.next();) + config->getTargetBinaryName() = exeName; +} //============================================================================== class GUIAppWizard : public NewProjectWizard @@ -35,20 +68,22 @@ public: String getName() { return "GUI Application"; } String getDescription() { return "Creates a standard application"; } - void addItemsToAlertWindow (AlertWindow& aw) + void addSetupItems (Component& setupComp, OwnedArray& itemsCreated) { const char* fileOptions[] = { "Create a Main.cpp file", "Create a Main.cpp file and a basic window", "Don't create any files", 0 }; - aw.addComboBox ("files", StringArray (fileOptions), "Files to Auto-Generate"); + createFileCreationOptionComboBox (setupComp, itemsCreated, fileOptions); } - String processResultsFromAlertWindow (AlertWindow& aw) + Result processResultsFromSetupItems (Component& setupComp) { + ComboBox* cb = dynamic_cast (setupComp.findChildWithID ("filesToCreate")); + jassert (cb != nullptr); createMainCpp = createWindow = false; - switch (aw.getComboBoxComponent ("files")->getSelectedItemIndex()) + switch (cb->getSelectedItemIndex()) { case 0: createMainCpp = true; break; case 1: createMainCpp = createWindow = true; break; @@ -56,7 +91,7 @@ public: default: jassertfalse; break; } - return String::empty; + return Result::ok(); } bool initialiseProject (Project& project) @@ -73,8 +108,7 @@ public: Project::Item sourceGroup (project.getMainGroup().addNewSubGroup ("Source", 0)); - for (int i = project.getNumConfigurations(); --i >= 0;) - project.getConfiguration(i).getTargetBinaryName() = File::createLegalFileName (appTitle); + setExecutableNameForAllTargets (project, File::createLegalFileName (appTitle)); String appHeaders (CodeHelpers::createIncludeStatement (project.getAppIncludeFile(), mainCppFile)); String initCode, shutdownCode, anotherInstanceStartedCode, privateMembers, memberInitialisers; @@ -101,8 +135,8 @@ public: if (! FileHelpers::overwriteFileWithNewDataIfDifferent (mainWindowCpp, windowCpp)) failedFiles.add (mainWindowCpp.getFullPathName()); - sourceGroup.addFile (mainWindowCpp, -1); - sourceGroup.addFile (mainWindowH, -1); + sourceGroup.addFile (mainWindowCpp, -1, true); + sourceGroup.addFile (mainWindowH, -1, false); } if (createMainCpp) @@ -122,7 +156,7 @@ public: if (! FileHelpers::overwriteFileWithNewDataIfDifferent (mainCppFile, mainCpp)) failedFiles.add (mainCppFile.getFullPathName()); - sourceGroup.addFile (mainCppFile, -1); + sourceGroup.addFile (mainCppFile, -1, true); } return true; @@ -141,26 +175,29 @@ public: String getName() { return "Console Application"; } String getDescription() { return "Creates a command-line application with no GUI features"; } - void addItemsToAlertWindow (AlertWindow& aw) + void addSetupItems (Component& setupComp, OwnedArray& itemsCreated) { const char* fileOptions[] = { "Create a Main.cpp file", "Don't create any files", 0 }; - aw.addComboBox ("files", StringArray (fileOptions), "Files to Auto-Generate"); + createFileCreationOptionComboBox (setupComp, itemsCreated, fileOptions); } - String processResultsFromAlertWindow (AlertWindow& aw) + Result processResultsFromSetupItems (Component& setupComp) { + ComboBox* cb = dynamic_cast (setupComp.findChildWithID ("filesToCreate")); + jassert (cb != nullptr); + createMainCpp = false; - switch (aw.getComboBoxComponent ("files")->getSelectedItemIndex()) + switch (cb->getSelectedItemIndex()) { case 0: createMainCpp = true; break; case 1: break; default: jassertfalse; break; } - return String::empty; + return Result::ok(); } bool initialiseProject (Project& project) @@ -174,8 +211,7 @@ public: Project::Item sourceGroup (project.getMainGroup().addNewSubGroup ("Source", 0)); - for (int i = project.getNumConfigurations(); --i >= 0;) - project.getConfiguration(i).getTargetBinaryName() = File::createLegalFileName (appTitle); + setExecutableNameForAllTargets (project, File::createLegalFileName (appTitle)); if (createMainCpp) { @@ -187,7 +223,7 @@ public: if (! FileHelpers::overwriteFileWithNewDataIfDifferent (mainCppFile, mainCpp)) failedFiles.add (mainCppFile.getFullPathName()); - sourceGroup.addFile (mainCppFile, -1); + sourceGroup.addFile (mainCppFile, -1, true); } return true; @@ -206,13 +242,13 @@ public: String getName() { return "Audio Plug-In"; } String getDescription() { return "Creates an audio plugin project"; } - void addItemsToAlertWindow (AlertWindow& aw) + void addSetupItems (Component& setupComp, OwnedArray& itemsCreated) { } - String processResultsFromAlertWindow (AlertWindow& aw) + Result processResultsFromSetupItems (Component& setupComp) { - return String::empty; + return Result::ok(); } bool initialiseProject (Project& project) @@ -230,15 +266,14 @@ public: File editorHFile = editorCppFile.withFileExtension (".h"); project.getProjectTypeValue() = ProjectType::getAudioPluginTypeName(); + project.addModule ("juce_audio_plugin_client", true); Project::Item sourceGroup (project.getMainGroup().addNewSubGroup ("Source", 0)); project.getConfigFlag ("JUCE_QUICKTIME") = Project::configFlagDisabled; // disabled because it interferes with RTAS build on PC - for (int i = project.getNumConfigurations(); --i >= 0;) - project.getConfiguration(i).getTargetBinaryName() = File::createLegalFileName (appTitle); + setExecutableNameForAllTargets (project, File::createLegalFileName (appTitle)); String appHeaders (CodeHelpers::createIncludeStatement (project.getAppIncludeFile(), filterCppFile)); - appHeaders << newLine << CodeHelpers::createIncludeStatement (project.getPluginCharacteristicsFile(), filterCppFile); String filterCpp = project.getFileTemplate ("jucer_AudioPluginFilterTemplate_cpp") .replace ("FILTERHEADERS", CodeHelpers::createIncludeStatement (filterHFile, filterCppFile) @@ -275,49 +310,19 @@ public: if (! FileHelpers::overwriteFileWithNewDataIfDifferent (editorHFile, editorH)) failedFiles.add (editorHFile.getFullPathName()); - sourceGroup.addFile (filterCppFile, -1); - sourceGroup.addFile (filterHFile, -1); - sourceGroup.addFile (editorCppFile, -1); - sourceGroup.addFile (editorHFile, -1); + sourceGroup.addFile (filterCppFile, -1, true); + sourceGroup.addFile (filterHFile, -1, false); + sourceGroup.addFile (editorCppFile, -1, true); + sourceGroup.addFile (editorHFile, -1, false); return true; } }; //============================================================================== -/*class BrowserPluginAppWizard : public NewProjectWizard -{ -public: - BrowserPluginAppWizard() {} - ~BrowserPluginAppWizard() {} - - String getName() { return "Browser Plug-In"; } - String getDescription() { return "Creates an audio plugin project"; } - - void addItemsToAlertWindow (AlertWindow& aw) - { - } - - String processResultsFromAlertWindow (AlertWindow& aw) - { - return String::empty; - } - - bool initialiseProject (Project& project) - { - return true; - } -};*/ - //============================================================================== -//============================================================================== -NewProjectWizard::NewProjectWizard() -{ -} - -NewProjectWizard::~NewProjectWizard() -{ -} +NewProjectWizard::NewProjectWizard() {} +NewProjectWizard::~NewProjectWizard() {} StringArray NewProjectWizard::getWizards() { @@ -351,71 +356,42 @@ NewProjectWizard* NewProjectWizard::createWizard (int index) return 0; } +File& NewProjectWizard::getLastWizardFolder() +{ + #if JUCE_WINDOWS + static File lastFolder (File::getSpecialLocation (File::userDocumentsDirectory)); + #else + static File lastFolder (File::getSpecialLocation (File::userHomeDirectory)); + #endif + return lastFolder; +} + //============================================================================== -Project* NewProjectWizard::runWizard (Component* ownerWindow_) +Project* NewProjectWizard::runWizard (Component* ownerWindow_, + const String& projectName, + const File& targetFolder_) { ownerWindow = ownerWindow_; + appTitle = projectName; + targetFolder = targetFolder_; + if (! targetFolder.exists()) { - static File newProjectFolder; - FileChooser fc ("New Juce Project", newProjectFolder, "*"); - - if (! fc.browseForDirectory()) - return 0; - - targetFolder = newProjectFolder = fc.getResult(); - - if (! newProjectFolder.exists()) - { - if (! newProjectFolder.createDirectory()) - failedFiles.add (newProjectFolder.getFullPathName()); - } - - if (FileHelpers::containsAnyNonHiddenFiles (newProjectFolder)) - { - if (! AlertWindow::showOkCancelBox (AlertWindow::InfoIcon, "New Juce Project", - "The folder you chose isn't empty - are you sure you want to create the project there?\n\nAny existing files with the same names may be overwritten by the new files.")) - return 0; - } + if (! targetFolder.createDirectory()) + failedFiles.add (targetFolder.getFullPathName()); } - - if (failedFiles.size() == 0) + else if (FileHelpers::containsAnyNonHiddenFiles (targetFolder)) { - AlertWindow aw ("New " + getName(), - "Please choose some basic project options...", - AlertWindow::NoIcon, ownerWindow); - - aw.addTextEditor ("name", "", "Project Name", false); - - addItemsToAlertWindow (aw); - - aw.addButton ("Create Project", 1, KeyPress (KeyPress::returnKey)); - aw.addButton ("Cancel", 0, KeyPress (KeyPress::escapeKey)); - - for (;;) - { - if (aw.runModalLoop() == 0) - return 0; - - appTitle = aw.getTextEditorContents ("name").trim(); - - String error (processResultsFromAlertWindow (aw)); - - if (error.isEmpty() && appTitle.isEmpty()) - error = "Please enter a sensible project title!"; - - if (error.isEmpty()) - break; - - aw.setColour (AlertWindow::textColourId, Colours::red); - aw.setMessage (error); - } + if (! AlertWindow::showOkCancelBox (AlertWindow::InfoIcon, "New Juce Project", + "The folder you chose isn't empty - are you sure you want to create the project there?\n\nAny existing files with the same names may be overwritten by the new files.")) + return nullptr; } projectFile = targetFolder.getChildFile (File::createLegalFileName (appTitle)) .withFileExtension (Project::projectFileExtension); - ScopedPointer project (new Project (projectFile)); + ScopedPointer project (new Project (projectFile)); + project->addDefaultModules (true); if (failedFiles.size() == 0) { @@ -424,10 +400,10 @@ Project* NewProjectWizard::runWizard (Component* ownerWindow_) project->setBundleIdentifierToDefault(); if (! initialiseProject (*project)) - return 0; + return nullptr; if (project->save (false, true) != FileBasedDocument::savedOk) - return 0; + return nullptr; project->setChangedFlag (false); } @@ -438,48 +414,154 @@ Project* NewProjectWizard::runWizard (Component* ownerWindow_) "Errors in Creating Project!", "The following files couldn't be written:\n\n" + failedFiles.joinIntoString ("\n", 0, 10)); - return 0; + return nullptr; } return project.release(); } -Project* NewProjectWizard::runNewProjectWizard (Component* ownerWindow) +//============================================================================== +class NewProjectWizard::WizardComp : public Component, + private ButtonListener, + private ComboBoxListener, + private TextEditorListener { - ScopedPointer wizard; - +public: + WizardComp() + : projectName ("Project name"), + nameLabel (String::empty, "Project Name:"), + typeLabel (String::empty, "Project Type:"), + fileBrowser (FileBrowserComponent::saveMode | FileBrowserComponent::canSelectDirectories, + getLastWizardFolder(), nullptr, nullptr), + fileOutline (String::empty, "Project Folder:"), + createButton ("Create..."), + cancelButton ("Cancel") { - AlertWindow aw ("New Juce Project", - "Select the type of project to create, and the location of your Juce folder", - AlertWindow::NoIcon, - ownerWindow); + setOpaque (true); + setSize (600, 500); - aw.addComboBox ("type", getWizards(), "Project Type"); + addChildAndSetID (&projectName, "projectName"); + projectName.setText ("NewProject"); + projectName.setBounds ("100, 14, parent.width / 2 - 10, top + 22"); + nameLabel.attachToComponent (&projectName, true); + projectName.addListener (this); - FilenameComponent juceFolderSelector ("Juce Library Location", StoredSettings::getInstance()->getLastKnownJuceFolder(), - true, true, false, "*", String::empty, "(Please select the folder containing Juce!)"); - juceFolderSelector.setSize (350, 22); + addChildAndSetID (&projectType, "projectType"); + projectType.addItemList (getWizards(), 1); + projectType.setSelectedId (1, true); + projectType.setBounds ("100, projectName.bottom + 4, projectName.right, top + 22"); + typeLabel.attachToComponent (&projectType, true); + projectType.addListener (this); - aw.addCustomComponent (&juceFolderSelector); + addChildAndSetID (&fileOutline, "fileOutline"); + fileOutline.setColour (GroupComponent::outlineColourId, Colours::black.withAlpha (0.2f)); + fileOutline.setTextLabelPosition (Justification::centred); + fileOutline.setBounds ("10, projectType.bottom + 20, projectType.right, parent.height - 10"); - aw.addButton ("Next", 1, KeyPress (KeyPress::returnKey)); - aw.addButton ("Cancel", 0, KeyPress (KeyPress::escapeKey)); + addChildAndSetID (&fileBrowser, "fileBrowser"); + fileBrowser.setBounds ("fileOutline.left + 10, fileOutline.top + 20, fileOutline.right - 10, fileOutline.bottom - 12"); + fileBrowser.setFilenameBoxLabel ("Folder:"); - for (;;) + addChildAndSetID (&createButton, "createButton"); + createButton.setBounds ("right - 140, bottom - 24, parent.width - 10, parent.height - 10"); + createButton.addListener (this); + + addChildAndSetID (&cancelButton, "cancelButton"); + cancelButton.setBounds ("right - 140, createButton.top, createButton.left - 10, createButton.bottom"); + cancelButton.addListener (this); + + updateCustomItems(); + updateCreateButton(); + } + + void paint (Graphics& g) + { + g.fillAll (Colour::greyLevel (0.93f)); + } + + void buttonClicked (Button* b) + { + if (b == &createButton) { - if (aw.runModalLoop() == 0) - return 0; + createProject(); + } + else + { + MainWindow* mw = dynamic_cast (getTopLevelComponent()); + jassert (mw != nullptr); - if (FileHelpers::isJuceFolder (juceFolderSelector.getCurrentFile())) - { - wizard = createWizard (aw.getComboBoxComponent ("type")->getSelectedItemIndex()); - break; - } - - aw.setColour (AlertWindow::textColourId, Colours::red); - aw.setMessage ("Please select a valid Juce folder for the project to use!"); + JucerApplication::getApp()->closeWindow (mw); } } - return wizard != nullptr ? wizard->runWizard (ownerWindow) : 0; + void createProject() + { + MainWindow* mw = Component::findParentComponentOfClass(); + jassert (mw != nullptr); + + ScopedPointer wizard (createWizard()); + + if (wizard != nullptr) + { + Result result (wizard->processResultsFromSetupItems (*this)); + + if (result.failed()) + { + AlertWindow::showMessageBox (AlertWindow::WarningIcon, "Create Project", result.getErrorMessage()); + return; + } + + ScopedPointer project (wizard->runWizard (mw, projectName.getText(), + fileBrowser.getSelectedFile (0))); + + if (project != nullptr) + mw->setProject (project.release()); + } + } + + void updateCustomItems() + { + customItems.clear(); + + ScopedPointer wizard (createWizard()); + + if (wizard != nullptr) + wizard->addSetupItems (*this, customItems); + } + + void comboBoxChanged (ComboBox*) + { + updateCustomItems(); + } + + void textEditorTextChanged (TextEditor&) + { + updateCreateButton(); + + fileBrowser.setFileName (File::createLegalFileName (projectName.getText())); + } + +private: + ComboBox projectType; + TextEditor projectName; + Label nameLabel, typeLabel; + FileBrowserComponent fileBrowser; + GroupComponent fileOutline; + TextButton createButton, cancelButton; + OwnedArray customItems; + + NewProjectWizard* createWizard() + { + return NewProjectWizard::createWizard (projectType.getSelectedItemIndex()); + } + + void updateCreateButton() + { + createButton.setEnabled (projectName.getText().trim().isNotEmpty()); + } +}; + +Component* NewProjectWizard::createComponent() +{ + return new WizardComp(); } diff --git a/extras/Introjucer/Source/Project/jucer_NewProjectWizard.h b/extras/Introjucer/Source/Project/jucer_NewProjectWizard.h index 53c1097b3c..5c6ae1dbfd 100644 --- a/extras/Introjucer/Source/Project/jucer_NewProjectWizard.h +++ b/extras/Introjucer/Source/Project/jucer_NewProjectWizard.h @@ -2,7 +2,7 @@ ============================================================================== This file is part of the JUCE library - "Jules' Utility Class Extensions" - Copyright 2004-10 by Raw Material Software Ltd. + Copyright 2004-11 by Raw Material Software Ltd. ------------------------------------------------------------------------------ @@ -23,8 +23,8 @@ ============================================================================== */ -#ifndef __JUCER_PROJECTWIZARD_JUCEHEADER__ -#define __JUCER_PROJECTWIZARD_JUCEHEADER__ +#ifndef __JUCER_NEWPROJECTWIZARD_JUCEHEADER__ +#define __JUCER_NEWPROJECTWIZARD_JUCEHEADER__ #include "../jucer_Headers.h" #include "jucer_Project.h" @@ -41,14 +41,14 @@ public: static int getNumWizards(); static NewProjectWizard* createWizard (int index); - static Project* runNewProjectWizard (Component* ownerWindow); + static Component* createComponent(); //============================================================================== virtual String getName() = 0; virtual String getDescription() = 0; - virtual void addItemsToAlertWindow (AlertWindow& aw) = 0; - virtual String processResultsFromAlertWindow (AlertWindow& aw) = 0; + virtual void addSetupItems (Component& setupComp, OwnedArray& itemsCreated) = 0; + virtual Result processResultsFromSetupItems (Component& setupComp) = 0; virtual bool initialiseProject (Project& project) = 0; protected: @@ -59,10 +59,16 @@ protected: //============================================================================== NewProjectWizard(); - Project* runWizard (Component* ownerWindow); + Project* runWizard (Component* ownerWindow, + const String& projectName, + const File& targetFolder); + + class WizardComp; + friend class WizardComp; File getSourceFilesFolder() const { return projectFile.getSiblingFile ("Source"); } + static File& getLastWizardFolder(); }; -#endif // __JUCER_PROJECTWIZARD_JUCEHEADER__ +#endif // __JUCER_NEWPROJECTWIZARD_JUCEHEADER__ diff --git a/extras/Introjucer/Source/Project/jucer_Project.cpp b/extras/Introjucer/Source/Project/jucer_Project.cpp index fba5d91e84..ee8e899b8e 100644 --- a/extras/Introjucer/Source/Project/jucer_Project.cpp +++ b/extras/Introjucer/Source/Project/jucer_Project.cpp @@ -2,7 +2,7 @@ ============================================================================== This file is part of the JUCE library - "Jules' Utility Class Extensions" - Copyright 2004-10 by Raw Material Software Ltd. + Copyright 2004-11 by Raw Material Software Ltd. ------------------------------------------------------------------------------ @@ -25,9 +25,8 @@ #include "jucer_Project.h" #include "jucer_ProjectType.h" -#include "jucer_ProjectExporter.h" -#include "jucer_ResourceFile.h" -#include "jucer_ProjectSaver.h" +#include "../Project Saving/jucer_ProjectExporter.h" +#include "../Project Saving/jucer_ProjectSaver.h" #include "../Application/jucer_OpenDocumentManager.h" @@ -38,10 +37,10 @@ namespace Tags const Identifier projectMainGroup ("MAINGROUP"); const Identifier group ("GROUP"); const Identifier file ("FILE"); - const Identifier configurations ("CONFIGURATIONS"); - const Identifier configuration ("CONFIGURATION"); const Identifier exporters ("EXPORTFORMATS"); const Identifier configGroup ("JUCEOPTIONS"); + const Identifier modulesGroup ("MODULES"); + const Identifier module ("MODULE"); } const char* Project::projectFileExtension = ".jucer"; @@ -90,17 +89,17 @@ void Project::updateProjectSettings() void Project::setMissingDefaultValues() { - if (! projectRoot.hasProperty (Ids::id_)) - projectRoot.setProperty (Ids::id_, createAlphaNumericUID(), nullptr); + if (! projectRoot.hasProperty (ComponentBuilder::idProperty)) + projectRoot.setProperty (ComponentBuilder::idProperty, createAlphaNumericUID(), nullptr); // Create main file group if missing if (! projectRoot.getChildWithName (Tags::projectMainGroup).isValid()) { Item mainGroup (*this, ValueTree (Tags::projectMainGroup)); - projectRoot.addChild (mainGroup.getNode(), 0, 0); + projectRoot.addChild (mainGroup.state, 0, 0); } - getMainGroup().initialiseNodeValues(); + getMainGroup().initialiseMissingProperties(); if (getDocumentTitle().isEmpty()) setTitle ("Juce Project"); @@ -111,17 +110,13 @@ void Project::setMissingDefaultValues() if (! projectRoot.hasProperty (Ids::version)) getVersion() = "1.0.0"; - if (! projectRoot.hasProperty (Ids::juceLinkage)) - getJuceLinkageModeValue() = useAmalgamatedJuceViaMultipleTemplates; + updateOldStyleConfigList(); + moveOldPropertyFromProjectToAllExporters (Ids::bigIcon); + moveOldPropertyFromProjectToAllExporters (Ids::smallIcon); - const String juceFolderPath (getRelativePathForFile (StoredSettings::getInstance()->getLastKnownJuceFolder())); - - // Create configs group - if (! projectRoot.getChildWithName (Tags::configurations).isValid()) - { - projectRoot.addChild (ValueTree (Tags::configurations), 0, 0); - createDefaultConfigs(); - } + for (Project::ExporterIterator exporter (*this); exporter.next();) + if (exporter->getNumConfigurations() == 0) + exporter->createDefaultConfigs(); if (! projectRoot.getChildWithName (Tags::exporters).isValid()) createDefaultExporters(); @@ -130,6 +125,74 @@ void Project::setMissingDefaultValues() if (! projectRoot.hasProperty (Ids::bundleIdentifier)) setBundleIdentifierToDefault(); + + if (! projectRoot.getChildWithName (Tags::modulesGroup).isValid()) + addDefaultModules (false); +} + +void Project::updateOldStyleConfigList() +{ + ValueTree deprecatedConfigsList (projectRoot.getChildWithName (ProjectExporter::configurations)); + + if (deprecatedConfigsList.isValid()) + { + projectRoot.removeChild (deprecatedConfigsList, nullptr); + + for (Project::ExporterIterator exporter (*this); exporter.next();) + { + if (exporter->getNumConfigurations() == 0) + { + ValueTree newConfigs (deprecatedConfigsList.createCopy()); + + if (! exporter->isXcode()) + { + for (int j = newConfigs.getNumChildren(); --j >= 0;) + { + ValueTree config (newConfigs.getChild(j)); + + config.removeProperty (Ids::osxSDK, nullptr); + config.removeProperty (Ids::osxCompatibility, nullptr); + config.removeProperty (Ids::osxArchitecture, nullptr); + } + } + + exporter->settings.addChild (newConfigs, 0, nullptr); + } + } + } +} + +void Project::moveOldPropertyFromProjectToAllExporters (Identifier name) +{ + if (projectRoot.hasProperty (name)) + { + for (Project::ExporterIterator exporter (*this); exporter.next();) + exporter->settings.setProperty (name, projectRoot [name], nullptr); + + projectRoot.removeProperty (name, nullptr); + } +} + +void Project::addDefaultModules (bool shouldCopyFilesLocally) +{ + addModule ("juce_core", shouldCopyFilesLocally); + + if (! isConfigFlagEnabled ("JUCE_ONLY_BUILD_CORE_LIBRARY")) + { + addModule ("juce_events", shouldCopyFilesLocally); + addModule ("juce_graphics", shouldCopyFilesLocally); + addModule ("juce_data_structures", shouldCopyFilesLocally); + addModule ("juce_gui_basics", shouldCopyFilesLocally); + addModule ("juce_gui_extra", shouldCopyFilesLocally); + addModule ("juce_gui_audio", shouldCopyFilesLocally); + addModule ("juce_cryptography", shouldCopyFilesLocally); + addModule ("juce_video", shouldCopyFilesLocally); + addModule ("juce_opengl", shouldCopyFilesLocally); + addModule ("juce_audio_basics", shouldCopyFilesLocally); + addModule ("juce_audio_devices", shouldCopyFilesLocally); + addModule ("juce_audio_formats", shouldCopyFilesLocally); + addModule ("juce_audio_processors", shouldCopyFilesLocally); + } } //============================================================================== @@ -157,15 +220,7 @@ const String Project::loadDocument (const File& file) const String Project::saveDocument (const File& file) { updateProjectSettings(); - - { - // (getting these forces the values to be sanitised) - OwnedArray flags; - getAllConfigFlags (flags); - } - - if (FileHelpers::isJuceFolder (getLocalJuceFolder())) - StoredSettings::getInstance()->setLastKnownJuceFolder (getLocalJuceFolder().getFullPathName()); + sanitiseConfigFlags(); StoredSettings::getInstance()->recentFiles.addFile (file); @@ -192,9 +247,6 @@ void Project::valueTreePropertyChanged (ValueTree& tree, const Identifier& prope if (property == Ids::projectType) setMissingDefaultValues(); - if (getProjectType().isLibrary()) - getJuceLinkageModeValue() = notLinkedToJuce; - changed(); } @@ -271,35 +323,14 @@ const ProjectType& Project::getProjectType() const return *type; } -const char* const Project::notLinkedToJuce = "none"; -const char* const Project::useLinkedJuce = "static"; -const char* const Project::useAmalgamatedJuce = "amalg_big"; -const char* const Project::useAmalgamatedJuceViaSingleTemplate = "amalg_template"; -const char* const Project::useAmalgamatedJuceViaMultipleTemplates = "amalg_multi"; - -File Project::getLocalJuceFolder() -{ - ScopedPointer exp (ProjectExporter::createPlatformDefaultExporter (*this)); - - if (exp != nullptr) - { - File f (resolveFilename (exp->getJuceFolder().toString())); - - if (FileHelpers::isJuceFolder (f)) - return f; - } - - return StoredSettings::getInstance()->getLastKnownJuceFolder(); -} - //============================================================================== -void Project::createPropertyEditors (Array & props) +void Project::createPropertyEditors (PropertyListBuilder& props) { - props.add (new TextPropertyComponent (getProjectName(), "Project Name", 256, false)); - props.getLast()->setTooltip ("The name of the project."); + props.add (new TextPropertyComponent (getProjectName(), "Project Name", 256, false), + "The name of the project."); - props.add (new TextPropertyComponent (getVersion(), "Project Version", 16, false)); - props.getLast()->setTooltip ("The project's version number, This should be in the format major.minor.point"); + props.add (new TextPropertyComponent (getVersion(), "Project Version", 16, false), + "The project's version number, This should be in the format major.minor.point"); { StringArray projectTypeNames; @@ -316,46 +347,15 @@ void Project::createPropertyEditors (Array & props) props.add (new ChoicePropertyComponent (getProjectTypeValue(), "Project Type", projectTypeNames, projectTypeCodes)); } - const char* linkageTypes[] = { "Not linked to Juce", "Linked to Juce Static Library", "Include Juce Amalgamated Files", "Include Juce Source Code Directly (In a single file)", "Include Juce Source Code Directly (Split across several files)", 0 }; - const char* linkageTypeValues[] = { notLinkedToJuce, useLinkedJuce, useAmalgamatedJuce, useAmalgamatedJuceViaSingleTemplate, useAmalgamatedJuceViaMultipleTemplates, 0 }; - props.add (new ChoicePropertyComponent (getJuceLinkageModeValue(), "Juce Linkage Method", StringArray (linkageTypes), Array (linkageTypeValues))); - props.getLast()->setTooltip ("The method by which your project will be linked to Juce."); + props.add (new TextPropertyComponent (getBundleIdentifier(), "Bundle Identifier", 256, false), + "A unique identifier for this product, mainly for use in Mac builds. It should be something like 'com.yourcompanyname.yourproductname'"); - props.add (new TextPropertyComponent (getBundleIdentifier(), "Bundle Identifier", 256, false)); - props.getLast()->setTooltip ("A unique identifier for this product, mainly for use in Mac builds. It should be something like 'com.yourcompanyname.yourproductname'"); + getProjectType().createPropertyEditors (*this, props); - { - OwnedArray images; - findAllImageItems (images); + props.add (new TextPropertyComponent (getProjectPreprocessorDefs(), "Preprocessor definitions", 32768, false), + "Extra preprocessor definitions. Use the form \"NAME1=value NAME2=value\", using whitespace or commas to separate the items - to include a space or comma in a definition, precede it with a backslash."); - StringArray choices; - Array ids; - - choices.add (""); - ids.add (var::null); - choices.add (String::empty); - ids.add (var::null); - - for (int i = 0; i < images.size(); ++i) - { - choices.add (images.getUnchecked(i)->getName().toString()); - ids.add (images.getUnchecked(i)->getID()); - } - - props.add (new ChoicePropertyComponent (getSmallIconImageItemID(), "Icon (small)", choices, ids)); - props.getLast()->setTooltip ("Sets an icon to use for the executable."); - - props.add (new ChoicePropertyComponent (getBigIconImageItemID(), "Icon (large)", choices, ids)); - props.getLast()->setTooltip ("Sets an icon to use for the executable."); - } - - getProjectType().createPropertyEditors(*this, props); - - props.add (new TextPropertyComponent (getProjectPreprocessorDefs(), "Preprocessor definitions", 32768, false)); - props.getLast()->setTooltip ("Extra preprocessor definitions. Use the form \"NAME1=value NAME2=value\", using whitespace or commas to separate the items - to include a space or comma in a definition, precede it with a backslash."); - - for (int i = props.size(); --i >= 0;) - props.getUnchecked(i)->setPreferredHeight (22); + props.setPreferredHeight (22); } String Project::getVersionAsHex() const @@ -373,26 +373,6 @@ String Project::getVersionAsHex() const return "0x" + String::toHexString (value); } -Image Project::getBigIcon() -{ - Item icon (getMainGroup().findItemWithID (getBigIconImageItemID().toString())); - - if (icon.isValid()) - return ImageCache::getFromFile (icon.getFile()); - - return Image::null; -} - -Image Project::getSmallIcon() -{ - Item icon (getMainGroup().findItemWithID (getSmallIconImageItemID().toString())); - - if (icon.isValid()) - return ImageCache::getFromFile (icon.getFile()); - - return Image::null; -} - StringPairArray Project::getPreprocessorDefs() const { return parsePreprocessorDefs (getProjectPreprocessorDefs().toString()); @@ -423,50 +403,46 @@ void Project::findAllImageItems (OwnedArray& items) } //============================================================================== -Project::Item::Item (Project& project_, const ValueTree& node_) - : project (&project_), node (node_) +Project::Item::Item (Project& project_, const ValueTree& state_) + : project (project_), state (state_) { } Project::Item::Item (const Item& other) - : project (other.project), node (other.node) + : project (other.project), state (other.state) { } -Project::Item& Project::Item::operator= (const Project::Item& other) -{ - project = other.project; - node = other.node; - return *this; -} +Project::Item Project::Item::createCopy() { Item i (*this); i.state = i.state.createCopy(); return i; } -Project::Item::~Item() -{ -} - -Project::Item Project::Item::createCopy() { Item i (*this); i.node = i.node.createCopy(); return i; } - -String Project::Item::getID() const { return node [Ids::id_]; } -void Project::Item::setID (const String& newID) { node.setProperty (Ids::id_, newID, nullptr); } +String Project::Item::getID() const { return state [ComponentBuilder::idProperty]; } +void Project::Item::setID (const String& newID) { state.setProperty (ComponentBuilder::idProperty, newID, nullptr); } String Project::Item::getImageFileID() const { return "id:" + getID(); } -Project::Item Project::Item::createGroup (Project& project, const String& name) +Image Project::Item::loadAsImageFile() const +{ + return isValid() ? ImageCache::getFromFile (getFile()) + : Image::null; +} + +Project::Item Project::Item::createGroup (Project& project, const String& name, const String& uid) { Item group (project, ValueTree (Tags::group)); - group.initialiseNodeValues(); + group.setID (uid); + group.initialiseMissingProperties(); group.getName() = name; return group; } -bool Project::Item::isFile() const { return node.hasType (Tags::file); } -bool Project::Item::isGroup() const { return node.hasType (Tags::group) || isMainGroup(); } -bool Project::Item::isMainGroup() const { return node.hasType (Tags::projectMainGroup); } +bool Project::Item::isFile() const { return state.hasType (Tags::file); } +bool Project::Item::isGroup() const { return state.hasType (Tags::group) || isMainGroup(); } +bool Project::Item::isMainGroup() const { return state.hasType (Tags::projectMainGroup); } bool Project::Item::isImageFile() const { return isFile() && getFile().hasFileExtension ("png;jpg;jpeg;gif;drawable"); } Project::Item Project::Item::findItemWithID (const String& targetId) const { - if (node [Ids::id_] == targetId) + if (state [ComponentBuilder::idProperty] == targetId) return *this; if (isGroup()) @@ -479,7 +455,7 @@ Project::Item Project::Item::findItemWithID (const String& targetId) const } } - return Item (*project, ValueTree::invalid); + return Item (project, ValueTree::invalid); } bool Project::Item::canContain (const Item& child) const @@ -494,25 +470,21 @@ bool Project::Item::canContain (const Item& child) const return false; } -bool Project::Item::shouldBeAddedToTargetProject() const -{ - return isFile(); -} +bool Project::Item::shouldBeAddedToTargetProject() const { return isFile(); } -bool Project::Item::shouldBeCompiled() const { return getShouldCompileValue().getValue(); } -Value Project::Item::getShouldCompileValue() const { return node.getPropertyAsValue (Ids::compile, getUndoManager()); } +bool Project::Item::shouldBeCompiled() const { return getShouldCompileValue().getValue(); } +Value Project::Item::getShouldCompileValue() const { return state.getPropertyAsValue (Ids::compile, getUndoManager()); } bool Project::Item::shouldBeAddedToBinaryResources() const { return getShouldAddToResourceValue().getValue(); } -Value Project::Item::getShouldAddToResourceValue() const { return node.getPropertyAsValue (Ids::resource, getUndoManager()); } - -Value Project::Item::getShouldInhibitWarningsValue() const { return node.getPropertyAsValue (Ids::noWarnings, getUndoManager()); } -Value Project::Item::getShouldUseStdCallValue() const { return node.getPropertyAsValue (Ids::useStdCall, nullptr); } +Value Project::Item::getShouldAddToResourceValue() const { return state.getPropertyAsValue (Ids::resource, getUndoManager()); } +Value Project::Item::getShouldInhibitWarningsValue() const { return state.getPropertyAsValue (Ids::noWarnings, getUndoManager()); } +Value Project::Item::getShouldUseStdCallValue() const { return state.getPropertyAsValue (Ids::useStdCall, nullptr); } String Project::Item::getFilePath() const { if (isFile()) - return node [Ids::file].toString(); + return state [Ids::file].toString(); else return String::empty; } @@ -520,14 +492,14 @@ String Project::Item::getFilePath() const File Project::Item::getFile() const { if (isFile()) - return getProject().resolveFilename (node [Ids::file].toString()); + return project.resolveFilename (state [Ids::file].toString()); else return File::nonexistent; } void Project::Item::setFile (const File& file) { - setFile (RelativePath (getProject().getRelativePathForFile (file), RelativePath::projectFolder)); + setFile (RelativePath (project.getRelativePathForFile (file), RelativePath::projectFolder)); jassert (getFile() == file); } @@ -535,8 +507,8 @@ void Project::Item::setFile (const RelativePath& file) { jassert (file.getRoot() == RelativePath::projectFolder); jassert (isFile()); - node.setProperty (Ids::file, file.toUnixStyle(), getUndoManager()); - node.setProperty (Ids::name, file.getFileName(), getUndoManager()); + state.setProperty (Ids::file, file.toUnixStyle(), getUndoManager()); + state.setProperty (Ids::name, file.getFileName(), getUndoManager()); } bool Project::Item::renameFile (const File& newFile) @@ -553,6 +525,11 @@ bool Project::Item::renameFile (const File& newFile) return false; } +bool Project::Item::containsChildForFile (const RelativePath& file) const +{ + return state.getChildWithProperty (Ids::file, file.toUnixStyle()).isValid(); +} + Project::Item Project::Item::findItemForFile (const File& file) const { if (getFile() == file) @@ -569,7 +546,7 @@ Project::Item Project::Item::findItemForFile (const File& file) const } } - return Item (getProject(), ValueTree::invalid); + return Item (project, ValueTree::invalid); } File Project::Item::determineGroupFolder() const @@ -595,7 +572,7 @@ File Project::Item::determineGroupFolder() const } else { - f = getProject().getFile().getParentDirectory(); + f = project.getFile().getParentDirectory(); if (f.getChildFile ("Source").isDirectory()) f = f.getChildFile ("Source"); @@ -604,35 +581,35 @@ File Project::Item::determineGroupFolder() const return f; } -void Project::Item::initialiseNodeValues() +void Project::Item::initialiseMissingProperties() { - if (! node.hasProperty (Ids::id_)) + if (! state.hasProperty (ComponentBuilder::idProperty)) setID (createAlphaNumericUID()); if (isFile()) { - node.setProperty (Ids::name, getFile().getFileName(), 0); + state.setProperty (Ids::name, getFile().getFileName(), 0); } else if (isGroup()) { for (int i = getNumChildren(); --i >= 0;) - getChild(i).initialiseNodeValues(); + getChild(i).initialiseMissingProperties(); } } Value Project::Item::getName() const { - return node.getPropertyAsValue (Ids::name, getUndoManager()); + return state.getPropertyAsValue (Ids::name, getUndoManager()); } void Project::Item::addChild (const Item& newChild, int insertIndex) { - node.addChild (newChild.getNode(), insertIndex, getUndoManager()); + state.addChild (newChild.state, insertIndex, getUndoManager()); } void Project::Item::removeItemFromProject() { - node.getParent().removeChild (node, getUndoManager()); + state.getParent().removeChild (state, getUndoManager()); } Project::Item Project::Item::getParent() const @@ -640,7 +617,7 @@ Project::Item Project::Item::getParent() const if (isMainGroup() || ! isGroup()) return *this; - return Item (getProject(), node.getParent()); + return Item (project, state.getParent()); } struct ItemSorter @@ -651,22 +628,56 @@ struct ItemSorter } }; -void Project::Item::sortAlphabetically() +struct ItemSorterWithGroupsAtStart { - ItemSorter sorter; - node.sort (sorter, getUndoManager(), true); + static int compareElements (const ValueTree& first, const ValueTree& second) + { + const bool firstIsGroup = first.hasType (Tags::group); + const bool secondIsGroup = second.hasType (Tags::group); + + if (firstIsGroup == secondIsGroup) + return first [Ids::name].toString().compareIgnoreCase (second [Ids::name].toString()); + else + return firstIsGroup ? -1 : 1; + } +}; + +void Project::Item::sortAlphabetically (bool keepGroupsAtStart) +{ + if (keepGroupsAtStart) + { + ItemSorterWithGroupsAtStart sorter; + state.sort (sorter, getUndoManager(), true); + } + else + { + ItemSorter sorter; + state.sort (sorter, getUndoManager(), true); + } +} + +Project::Item Project::Item::getOrCreateSubGroup (const String& name) +{ + for (int i = state.getNumChildren(); --i >= 0;) + { + const ValueTree child (state.getChild (i)); + if (child.getProperty (Ids::name) == name && child.hasType (Tags::group)) + return Item (project, child); + } + + return addNewSubGroup (name, -1); } Project::Item Project::Item::addNewSubGroup (const String& name, int insertIndex) { - Item group (createGroup (getProject(), name)); + Item group (createGroup (project, name, createGUID (getID() + name + String (getNumChildren())))); jassert (canContain (group)); addChild (group, insertIndex); return group; } -bool Project::Item::addFile (const File& file, int insertIndex) +bool Project::Item::addFile (const File& file, int insertIndex, const bool shouldCompile) { if (file == File::nonexistent || file.isHidden() || file.getFileName().startsWithChar ('.')) return false; @@ -678,28 +689,16 @@ bool Project::Item::addFile (const File& file, int insertIndex) DirectoryIterator iter (file, false, "*", File::findFilesAndDirectories); while (iter.next()) { - if (! getProject().getMainGroup().findItemForFile (iter.getFile()).isValid()) - group.addFile (iter.getFile(), -1); + if (! project.getMainGroup().findItemForFile (iter.getFile()).isValid()) + group.addFile (iter.getFile(), -1, shouldCompile); } - group.sortAlphabetically(); + group.sortAlphabetically (false); } else if (file.existsAsFile()) { - if (! getProject().getMainGroup().findItemForFile (file).isValid()) - { - Item item (getProject(), ValueTree (Tags::file)); - item.initialiseNodeValues(); - item.getName() = file.getFileName(); - item.getShouldCompileValue() = file.hasFileExtension ("cpp;mm;c;m;cc;cxx"); - item.getShouldAddToResourceValue() = getProject().shouldBeAddedToBinaryResourcesByDefault (file); - - if (canContain (item)) - { - item.setFile (file); - addChild (item, insertIndex); - } - } + if (! project.getMainGroup().findItemForFile (file).isValid()) + addFileUnchecked (file, insertIndex, shouldCompile); } else { @@ -709,13 +708,28 @@ bool Project::Item::addFile (const File& file, int insertIndex) return true; } +void Project::Item::addFileUnchecked (const File& file, int insertIndex, const bool shouldCompile) +{ + Item item (project, ValueTree (Tags::file)); + item.initialiseMissingProperties(); + item.getName() = file.getFileName(); + item.getShouldCompileValue() = shouldCompile && file.hasFileExtension ("cpp;mm;c;m;cc;cxx;r"); + item.getShouldAddToResourceValue() = project.shouldBeAddedToBinaryResourcesByDefault (file); + + if (canContain (item)) + { + item.setFile (file); + addChild (item, insertIndex); + } +} + bool Project::Item::addRelativeFile (const RelativePath& file, int insertIndex, bool shouldCompile) { - Item item (getProject(), ValueTree (Tags::file)); - item.initialiseNodeValues(); + Item item (project, ValueTree (Tags::file)); + item.initialiseMissingProperties(); item.getName() = file.getFileName(); item.getShouldCompileValue() = shouldCompile; - item.getShouldAddToResourceValue() = getProject().shouldBeAddedToBinaryResourcesByDefault (file); + item.getShouldAddToResourceValue() = project.shouldBeAddedToBinaryResourcesByDefault (file); if (canContain (item)) { @@ -738,7 +752,7 @@ const Drawable* Project::Item::getIcon() const } else if (isMainGroup()) { - return &(getProject().mainProjectIcon); + return &(project.mainProjectIcon); } return LookAndFeel::getDefaultLookAndFeel().getDefaultFolderImage(); @@ -750,19 +764,6 @@ ValueTree Project::getConfigNode() return projectRoot.getOrCreateChildWithName (Tags::configGroup, nullptr); } -void Project::getAllConfigFlags (OwnedArray & flags) -{ - OwnedArray modules; - getProjectType().createRequiredModules (*this, modules); - - int i; - for (i = 0; i < modules.size(); ++i) - modules.getUnchecked(i)->getConfigFlags (*this, flags); - - for (i = 0; i < flags.size(); ++i) - flags.getUnchecked(i)->value.referTo (getConfigFlag (flags.getUnchecked(i)->symbol)); -} - const char* const Project::configFlagDefault = "default"; const char* const Project::configFlagEnabled = "enabled"; const char* const Project::configFlagDisabled = "disabled"; @@ -783,197 +784,89 @@ bool Project::isConfigFlagEnabled (const String& name) const return projectRoot.getChildWithName (Tags::configGroup).getProperty (name) == configFlagEnabled; } +void Project::sanitiseConfigFlags() +{ + ValueTree configNode (getConfigNode()); + + for (int i = configNode.getNumProperties(); --i >= 0;) + { + const var value (configNode [configNode.getPropertyName(i)]); + + if (value != configFlagEnabled && value != configFlagDisabled) + configNode.removeProperty (configNode.getPropertyName(i), getUndoManagerFor (configNode)); + } +} + //============================================================================== -ValueTree Project::getConfigurations() const +ValueTree Project::getModulesNode() { - return projectRoot.getChildWithName (Tags::configurations); + return projectRoot.getOrCreateChildWithName (Tags::modulesGroup, nullptr); } -int Project::getNumConfigurations() const +bool Project::isModuleEnabled (const String& moduleID) const { - return getConfigurations().getNumChildren(); -} + ValueTree modules (projectRoot.getChildWithName (Tags::modulesGroup)); -Project::BuildConfiguration Project::getConfiguration (int index) -{ - jassert (index < getConfigurations().getNumChildren()); - return BuildConfiguration (this, getConfigurations().getChild (index)); -} - -bool Project::hasConfigurationNamed (const String& name) const -{ - const ValueTree configs (getConfigurations()); - for (int i = configs.getNumChildren(); --i >= 0;) - if (configs.getChild(i) [Ids::name].toString() == name) + for (int i = 0; i < modules.getNumChildren(); ++i) + if (modules.getChild(i) [ComponentBuilder::idProperty] == moduleID) return true; return false; } -String Project::getUniqueConfigName (String name) const +Value Project::shouldShowAllModuleFilesInProject (const String& moduleID) { - String nameRoot (name); - while (CharacterFunctions::isDigit (nameRoot.getLastCharacter())) - nameRoot = nameRoot.dropLastCharacters (1); - - nameRoot = nameRoot.trim(); - - int suffix = 2; - while (hasConfigurationNamed (name)) - name = nameRoot + " " + String (suffix++); - - return name; + return getModulesNode().getChildWithProperty (ComponentBuilder::idProperty, moduleID) + .getPropertyAsValue (Ids::showAllCode, getUndoManagerFor (getModulesNode())); } -void Project::addNewConfiguration (BuildConfiguration* configToCopy) +Value Project::shouldCopyModuleFilesLocally (const String& moduleID) { - const String configName (getUniqueConfigName (configToCopy != nullptr ? configToCopy->config [Ids::name].toString() - : "New Build Configuration")); + return getModulesNode().getChildWithProperty (ComponentBuilder::idProperty, moduleID) + .getPropertyAsValue (Ids::useLocalCopy, getUndoManagerFor (getModulesNode())); +} - ValueTree configs (getConfigurations()); - - if (! configs.isValid()) +void Project::addModule (const String& moduleID, bool shouldCopyFilesLocally) +{ + if (! isModuleEnabled (moduleID)) { - projectRoot.addChild (ValueTree (Tags::configurations), 0, getUndoManagerFor (projectRoot)); - configs = getConfigurations(); + ValueTree module (Tags::module); + module.setProperty (ComponentBuilder::idProperty, moduleID, nullptr); + + ValueTree modules (getModulesNode()); + modules.addChild (module, -1, getUndoManagerFor (modules)); + + shouldShowAllModuleFilesInProject (moduleID) = true; } - ValueTree newConfig (Tags::configuration); - if (configToCopy != nullptr) - newConfig = configToCopy->config.createCopy(); - - newConfig.setProperty (Ids::name, configName, 0); - - configs.addChild (newConfig, -1, getUndoManagerFor (configs)); + if (shouldCopyFilesLocally) + shouldCopyModuleFilesLocally (moduleID) = true; } -void Project::deleteConfiguration (int index) +void Project::removeModule (const String& moduleID) { - ValueTree configs (getConfigurations()); - configs.removeChild (index, getUndoManagerFor (getConfigurations())); + ValueTree modules (getModulesNode()); + + for (int i = 0; i < modules.getNumChildren(); ++i) + if (modules.getChild(i) [ComponentBuilder::idProperty] == moduleID) + modules.removeChild (i, getUndoManagerFor (modules)); } -void Project::createDefaultConfigs() +void Project::createRequiredModules (const ModuleList& availableModules, OwnedArray& modules) const { - for (int i = 0; i < 2; ++i) - { - addNewConfiguration (nullptr); - BuildConfiguration config = getConfiguration (i); - - const bool debugConfig = i == 0; - - config.getName() = debugConfig ? "Debug" : "Release"; - config.isDebug() = debugConfig; - config.getOptimisationLevel() = debugConfig ? 1 : 2; - config.getTargetBinaryName() = getProjectFilenameRoot(); - } + for (int i = 0; i < availableModules.modules.size(); ++i) + if (isModuleEnabled (availableModules.modules.getUnchecked(i)->uid)) + modules.add (availableModules.modules.getUnchecked(i)->create()); } -//============================================================================== -Project::BuildConfiguration::BuildConfiguration (Project* project_, const ValueTree& configNode) - : project (project_), - config (configNode) +int Project::getNumModules() const { + return projectRoot.getChildWithName (Tags::modulesGroup).getNumChildren(); } -Project::BuildConfiguration::BuildConfiguration (const BuildConfiguration& other) - : project (other.project), - config (other.config) +String Project::getModuleID (int index) const { -} - -const Project::BuildConfiguration& Project::BuildConfiguration::operator= (const BuildConfiguration& other) -{ - project = other.project; - config = other.config; - return *this; -} - -Project::BuildConfiguration::~BuildConfiguration() -{ -} - -String Project::BuildConfiguration::getGCCOptimisationFlag() const -{ - const int level = (int) getOptimisationLevel().getValue(); - return String (level <= 1 ? "0" : (level == 2 ? "s" : "3")); -} - -const char* const Project::BuildConfiguration::osxVersionDefault = "default"; -const char* const Project::BuildConfiguration::osxVersion10_4 = "10.4 SDK"; -const char* const Project::BuildConfiguration::osxVersion10_5 = "10.5 SDK"; -const char* const Project::BuildConfiguration::osxVersion10_6 = "10.6 SDK"; - -const char* const Project::BuildConfiguration::osxArch_Default = "default"; -const char* const Project::BuildConfiguration::osxArch_Native = "Native"; -const char* const Project::BuildConfiguration::osxArch_32BitUniversal = "32BitUniversal"; -const char* const Project::BuildConfiguration::osxArch_64BitUniversal = "64BitUniversal"; -const char* const Project::BuildConfiguration::osxArch_64Bit = "64BitIntel"; - -void Project::BuildConfiguration::createPropertyEditors (Array & props) -{ - props.add (new TextPropertyComponent (getName(), "Name", 96, false)); - props.getLast()->setTooltip ("The name of this configuration."); - - props.add (new BooleanPropertyComponent (isDebug(), "Debug mode", "Debugging enabled")); - props.getLast()->setTooltip ("If enabled, this means that the configuration should be built with debug synbols."); - - const char* optimisationLevels[] = { "No optimisation", "Optimise for size and speed", "Optimise for maximum speed", 0 }; - const int optimisationLevelValues[] = { 1, 2, 3, 0 }; - props.add (new ChoicePropertyComponent (getOptimisationLevel(), "Optimisation", StringArray (optimisationLevels), Array (optimisationLevelValues))); - props.getLast()->setTooltip ("The optimisation level for this configuration"); - - props.add (new TextPropertyComponent (getTargetBinaryName(), "Binary name", 256, false)); - props.getLast()->setTooltip ("The filename to use for the destination binary executable file. Don't add a suffix to this, because platform-specific suffixes will be added for each target platform."); - - props.add (new TextPropertyComponent (getTargetBinaryRelativePath(), "Binary location", 1024, false)); - props.getLast()->setTooltip ("The folder in which the finished binary should be placed. Leave this blank to cause the binary to be placed in its default location in the build folder."); - - props.add (new TextPropertyComponent (getHeaderSearchPath(), "Header search path", 16384, false)); - props.getLast()->setTooltip ("Extra header search paths. Use semi-colons to separate multiple paths."); - - props.add (new TextPropertyComponent (getBuildConfigPreprocessorDefs(), "Preprocessor definitions", 32768, false)); - props.getLast()->setTooltip ("Extra preprocessor definitions. Use the form \"NAME1=value NAME2=value\", using whitespace or commas to separate the items - to include a space or comma in a definition, precede it with a backslash."); - - if (getMacSDKVersion().toString().isEmpty()) - getMacSDKVersion() = osxVersionDefault; - - const char* osxVersions[] = { "Use Default", osxVersion10_4, osxVersion10_5, osxVersion10_6, 0 }; - const char* osxVersionValues[] = { osxVersionDefault, osxVersion10_4, osxVersion10_5, osxVersion10_6, 0 }; - - props.add (new ChoicePropertyComponent (getMacSDKVersion(), "OSX Base SDK Version", StringArray (osxVersions), Array (osxVersionValues))); - props.getLast()->setTooltip ("The version of OSX to link against in the XCode build."); - - if (getMacCompatibilityVersion().toString().isEmpty()) - getMacCompatibilityVersion() = osxVersionDefault; - - props.add (new ChoicePropertyComponent (getMacCompatibilityVersion(), "OSX Compatibility Version", StringArray (osxVersions), Array (osxVersionValues))); - props.getLast()->setTooltip ("The minimum version of OSX that the target binary will be compatible with."); - - const char* osxArch[] = { "Use Default", "Native architecture of build machine", "Universal Binary (32-bit)", "Universal Binary (64-bit)", "64-bit Intel", 0 }; - const char* osxArchValues[] = { osxArch_Default, osxArch_Native, osxArch_32BitUniversal, osxArch_64BitUniversal, osxArch_64Bit, 0 }; - - if (getMacArchitecture().toString().isEmpty()) - getMacArchitecture() = osxArch_Default; - - props.add (new ChoicePropertyComponent (getMacArchitecture(), "OSX Architecture", StringArray (osxArch), Array (osxArchValues))); - props.getLast()->setTooltip ("The type of OSX binary that will be produced."); - - for (int i = props.size(); --i >= 0;) - props.getUnchecked(i)->setPreferredHeight (22); -} - -StringPairArray Project::BuildConfiguration::getAllPreprocessorDefs() const -{ - return mergePreprocessorDefs (project->getPreprocessorDefs(), - parsePreprocessorDefs (getBuildConfigPreprocessorDefs().toString())); -} - -StringArray Project::BuildConfiguration::getHeaderSearchPaths() const -{ - StringArray s; - s.addTokens (getHeaderSearchPath().toString(), ";", String::empty); - return s; + return projectRoot.getChildWithName (Tags::modulesGroup).getChild (index) [ComponentBuilder::idProperty].toString(); } //============================================================================== @@ -1001,9 +894,9 @@ ProjectExporter* Project::createExporter (int index) return ProjectExporter::createExporter (*this, getExporters().getChild (index)); } -void Project::addNewExporter (int exporterIndex) +void Project::addNewExporter (const String& exporterName) { - ScopedPointer exp (ProjectExporter::createNewExporter (*this, exporterIndex)); + ScopedPointer exp (ProjectExporter::createNewExporter (*this, exporterName)); ValueTree exporters (getExporters()); exporters.addChild (exp->getSettings(), -1, getUndoManagerFor (exporters)); @@ -1020,8 +913,10 @@ void Project::createDefaultExporters() ValueTree exporters (getExporters()); exporters.removeAllChildren (getUndoManagerFor (exporters)); - for (int i = 0; i < ProjectExporter::getNumExporters(); ++i) - addNewExporter (i); + const StringArray exporterNames (ProjectExporter::getDefaultExporters()); + + for (int i = 0; i < exporterNames.size(); ++i) + addNewExporter (exporterNames[i]); } //============================================================================== @@ -1040,34 +935,21 @@ String Project::getFileTemplate (const String& templateName) } //============================================================================== -void Project::resaveJucerFile (const File& file) +Project::ExporterIterator::ExporterIterator (Project& project_) : index (-1), project (project_) {} +Project::ExporterIterator::~ExporterIterator() {} + +bool Project::ExporterIterator::next() { - if (! file.exists()) + if (++index >= project.getNumExporters()) + return false; + + exporter = project.createExporter (index); + + if (exporter == nullptr) { - std::cout << "The file " << file.getFullPathName() << " doesn't exist!" << std::endl; - return; + jassertfalse; // corrupted project file? + return next(); } - if (! file.hasFileExtension (Project::projectFileExtension)) - { - std::cout << file.getFullPathName() << " isn't a valid jucer project file!" << std::endl; - return; - } - - Project newDoc (file); - - if (! newDoc.loadFrom (file, true)) - { - std::cout << "Failed to load the project file: " << file.getFullPathName() << std::endl; - return; - } - - std::cout << "The Jucer - Re-saving file: " << file.getFullPathName() << std::endl; - String error (newDoc.saveDocument (file)); - - if (error.isNotEmpty()) - { - std::cout << "Error when writing project: " << error << std::endl; - return; - } + return true; } diff --git a/extras/Introjucer/Source/Project/jucer_Project.h b/extras/Introjucer/Source/Project/jucer_Project.h index c43da6de00..3cb988ea0d 100644 --- a/extras/Introjucer/Source/Project/jucer_Project.h +++ b/extras/Introjucer/Source/Project/jucer_Project.h @@ -2,7 +2,7 @@ ============================================================================== This file is part of the JUCE library - "Jules' Utility Class Extensions" - Copyright 2004-10 by Raw Material Software Ltd. + Copyright 2004-11 by Raw Material Software Ltd. ------------------------------------------------------------------------------ @@ -29,6 +29,8 @@ #include "../jucer_Headers.h" class ProjectExporter; class ProjectType; +class ModuleList; +class LibraryModule; //============================================================================== class Project : public FileBasedDocument, @@ -53,7 +55,7 @@ public: ValueTree getProjectRoot() const { return projectRoot; } Value getProjectName() { return getMainGroup().getName(); } String getProjectFilenameRoot() { return File::createLegalFileName (getDocumentTitle()); } - String getProjectUID() const { return projectRoot [Ids::id_]; } + String getProjectUID() const { return projectRoot [ComponentBuilder::idProperty]; } //============================================================================== template @@ -67,7 +69,7 @@ public: //============================================================================== // Creates editors for the project settings - void createPropertyEditors (Array & properties); + void createPropertyEditors (PropertyListBuilder&); //============================================================================== // project types @@ -76,41 +78,18 @@ public: Value getVersion() const { return getProjectValue ("version"); } String getVersionAsHex() const; - Value getBundleIdentifier() const { return getProjectValue ("bundleIdentifier"); } + Value getBundleIdentifier() const { return getProjectValue (Ids::bundleIdentifier); } void setBundleIdentifierToDefault() { getBundleIdentifier() = "com.yourcompany." + CodeHelpers::makeValidIdentifier (getProjectName().toString(), false, true, false); } - //============================================================================== - // linkage modes.. - static const char* const notLinkedToJuce; - static const char* const useLinkedJuce; - static const char* const useAmalgamatedJuce; - static const char* const useAmalgamatedJuceViaSingleTemplate; - static const char* const useAmalgamatedJuceViaMultipleTemplates; - - Value getJuceLinkageModeValue() const { return getProjectValue ("juceLinkage"); } - String getJuceLinkageMode() const { return getJuceLinkageModeValue().toString(); } - - bool isUsingWrapperFiles() const { return isUsingFullyAmalgamatedFile() || isUsingSingleTemplateFile() || isUsingMultipleTemplateFiles(); } - bool isUsingFullyAmalgamatedFile() const { return getJuceLinkageMode() == useAmalgamatedJuce; } - bool isUsingSingleTemplateFile() const { return getJuceLinkageMode() == useAmalgamatedJuceViaSingleTemplate; } - bool isUsingMultipleTemplateFiles() const { return getJuceLinkageMode() == useAmalgamatedJuceViaMultipleTemplates; } - //============================================================================== Value getProjectValue (const Identifier& name) const { return projectRoot.getPropertyAsValue (name, getUndoManagerFor (projectRoot)); } Value getProjectPreprocessorDefs() const { return getProjectValue (Ids::defines); } StringPairArray getPreprocessorDefs() const; - Value getBigIconImageItemID() const { return getProjectValue ("bigIcon"); } - Value getSmallIconImageItemID() const { return getProjectValue ("smallIcon"); } - Image getBigIcon(); - Image getSmallIcon(); - //============================================================================== File getAppIncludeFile() const { return getGeneratedCodeFolder().getChildFile (getJuceSourceHFilename()); } File getGeneratedCodeFolder() const { return getFile().getSiblingFile ("JuceLibraryCode"); } - File getPluginCharacteristicsFile() const { return getGeneratedCodeFolder().getChildFile (getPluginCharacteristicsFilename()); } - File getLocalJuceFolder(); //============================================================================== String getAmalgamatedHeaderFileName() const { return "juce_amalgamated.h"; } @@ -121,8 +100,6 @@ public: String getJuceSourceFilenameRoot() const { return "JuceLibraryCode"; } int getNumSeparateAmalgamatedFiles() const { return 4; } String getJuceSourceHFilename() const { return "JuceHeader.h"; } - String getJuceCodeGroupName() const { return "Juce Library Code"; } - String getPluginCharacteristicsFilename() const { return "JucePluginCharacteristics.h"; } //============================================================================== class Item @@ -131,18 +108,13 @@ public: //============================================================================== Item (Project& project, const ValueTree& itemNode); Item (const Item& other); - Item& operator= (const Item& other); - ~Item(); - static Item createGroup (Project& project, const String& name); - void initialiseNodeValues(); + static Item createGroup (Project& project, const String& name, const String& uid); + void initialiseMissingProperties(); //============================================================================== - bool isValid() const { return node.isValid(); } - const ValueTree& getNode() const noexcept { return node; } - ValueTree& getNode() noexcept { return node; } - Project& getProject() const noexcept { return *project; } - bool operator== (const Item& other) const { return node == other.node && project == other.project; } + bool isValid() const { return state.isValid(); } + bool operator== (const Item& other) const { return state == other.state && &project == &other.project; } bool operator!= (const Item& other) const { return ! operator== (other); } //============================================================================== @@ -152,9 +124,11 @@ public: bool isImageFile() const; String getID() const; - Item findItemWithID (const String& targetId) const; // (recursive search) - String getImageFileID() const; void setID (const String& newID); + Item findItemWithID (const String& targetId) const; // (recursive search) + + String getImageFileID() const; + Image loadAsImageFile() const; //============================================================================== Value getName() const; @@ -175,116 +149,90 @@ public: //============================================================================== bool canContain (const Item& child) const; - int getNumChildren() const { return node.getNumChildren(); } - Item getChild (int index) const { return Item (getProject(), node.getChild (index)); } + int getNumChildren() const { return state.getNumChildren(); } + Item getChild (int index) const { return Item (project, state.getChild (index)); } Item addNewSubGroup (const String& name, int insertIndex); + Item getOrCreateSubGroup (const String& name); void addChild (const Item& newChild, int insertIndex); - bool addFile (const File& file, int insertIndex); + bool addFile (const File& file, int insertIndex, bool shouldCompile); + void addFileUnchecked (const File& file, int insertIndex, bool shouldCompile); bool addRelativeFile (const RelativePath& file, int insertIndex, bool shouldCompile); void removeItemFromProject(); - void sortAlphabetically(); + void sortAlphabetically (bool keepGroupsAtStart); Item findItemForFile (const File& file) const; + bool containsChildForFile (const RelativePath& file) const; Item getParent() const; Item createCopy(); + UndoManager* getUndoManager() const { return project.getUndoManagerFor (state); } + const Drawable* getIcon() const; - private: - //============================================================================== - Project* project; - ValueTree node; + Project& project; + ValueTree state; - UndoManager* getUndoManager() const { return getProject().getUndoManagerFor (node); } + private: + Item& operator= (const Item&); }; Item getMainGroup(); void findAllImageItems (OwnedArray& items); - //============================================================================== - class BuildConfiguration - { - public: - BuildConfiguration (const BuildConfiguration&); - const BuildConfiguration& operator= (const BuildConfiguration&); - ~BuildConfiguration(); - - //============================================================================== - Project& getProject() const { return *project; } - - void createPropertyEditors (Array & properties); - - //============================================================================== - Value getName() const { return getValue (Ids::name); } - Value isDebug() const { return getValue (Ids::isDebug); } - Value getTargetBinaryName() const { return getValue (Ids::targetName); } - // the path relative to the build folder in which the binary should go - Value getTargetBinaryRelativePath() const { return getValue (Ids::binaryPath); } - Value getOptimisationLevel() const { return getValue (Ids::optimisation); } - String getGCCOptimisationFlag() const; - Value getBuildConfigPreprocessorDefs() const { return getValue (Ids::defines); } - StringPairArray getAllPreprocessorDefs() const; // includes inherited definitions - Value getHeaderSearchPath() const { return getValue (Ids::headerPath); } - StringArray getHeaderSearchPaths() const; - - static const char* const osxVersionDefault; - static const char* const osxVersion10_4; - static const char* const osxVersion10_5; - static const char* const osxVersion10_6; - Value getMacSDKVersion() const { return getValue (Ids::osxSDK); } - Value getMacCompatibilityVersion() const { return getValue (Ids::osxCompatibility); } - - static const char* const osxArch_Default; - static const char* const osxArch_Native; - static const char* const osxArch_32BitUniversal; - static const char* const osxArch_64BitUniversal; - static const char* const osxArch_64Bit; - Value getMacArchitecture() const { return getValue (Ids::osxArchitecture); } - - //============================================================================== - private: - friend class Project; - Project* project; - ValueTree config; - - Value getValue (const Identifier& name) const { return config.getPropertyAsValue (name, getUndoManager()); } - UndoManager* getUndoManager() const { return project->getUndoManagerFor (config); } - - BuildConfiguration (Project* project, const ValueTree& configNode); - }; - - int getNumConfigurations() const; - BuildConfiguration getConfiguration (int index); - void addNewConfiguration (BuildConfiguration* configToCopy); - void deleteConfiguration (int index); - bool hasConfigurationNamed (const String& name) const; - String getUniqueConfigName (String name) const; - //============================================================================== ValueTree getExporters(); int getNumExporters(); ProjectExporter* createExporter (int index); - void addNewExporter (int exporterIndex); + void addNewExporter (const String& exporterName); void deleteExporter (int index); void createDefaultExporters(); + struct ExporterIterator + { + ExporterIterator (Project& project); + ~ExporterIterator(); + + bool next(); + + ProjectExporter& operator*() const { return *exporter; } + ProjectExporter* operator->() const { return exporter; } + + ScopedPointer exporter; + int index; + + private: + Project& project; + JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (ExporterIterator); + }; + //============================================================================== struct ConfigFlag { - String symbol, description; + String symbol, description, sourceModuleID; Value value; // 1 = true, 2 = false, anything else = use default }; - void getAllConfigFlags (OwnedArray & flags); - static const char* const configFlagDefault; static const char* const configFlagEnabled; static const char* const configFlagDisabled; Value getConfigFlag (const String& name); bool isConfigFlagEnabled (const String& name) const; + //============================================================================== + bool isModuleEnabled (const String& moduleID) const; + Value shouldShowAllModuleFilesInProject (const String& moduleID); + Value shouldCopyModuleFilesLocally (const String& moduleID); + + void addModule (const String& moduleID, bool shouldCopyFilesLocally); + void removeModule (const String& moduleID); + int getNumModules() const; + String getModuleID (int index) const; + void addDefaultModules (bool shouldCopyFilesLocally); + + void createRequiredModules (const ModuleList& availableModules, OwnedArray& modules) const; + //============================================================================== String getFileTemplate (const String& templateName); @@ -296,13 +244,11 @@ public: void valueTreeParentChanged (ValueTree& tree); //============================================================================== - UndoManager* getUndoManagerFor (const ValueTree& node) const { return 0; } + UndoManager* getUndoManagerFor (const ValueTree&) const { return nullptr; } //============================================================================== static const char* projectFileExtension; - static void resaveJucerFile (const File& file); - private: friend class Item; ValueTree projectRoot; @@ -310,10 +256,14 @@ private: DrawableImage mainProjectIcon; void updateProjectSettings(); + void sanitiseConfigFlags(); void setMissingDefaultValues(); ValueTree getConfigurations() const; - void createDefaultConfigs(); ValueTree getConfigNode(); + ValueTree getModulesNode(); + + void updateOldStyleConfigList(); + void moveOldPropertyFromProjectToAllExporters (Identifier name); JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (Project); }; diff --git a/extras/Introjucer/Source/Project/jucer_ProjectContentComponent.cpp b/extras/Introjucer/Source/Project/jucer_ProjectContentComponent.cpp index 80d124e35c..295a2f5c56 100644 --- a/extras/Introjucer/Source/Project/jucer_ProjectContentComponent.cpp +++ b/extras/Introjucer/Source/Project/jucer_ProjectContentComponent.cpp @@ -2,7 +2,7 @@ ============================================================================== This file is part of the JUCE library - "Jules' Utility Class Extensions" - Copyright 2004-10 by Raw Material Software Ltd. + Copyright 2004-11 by Raw Material Software Ltd. ------------------------------------------------------------------------------ @@ -28,7 +28,7 @@ #include "../Code Editor/jucer_SourceCodeEditor.h" #include "jucer_ProjectInformationComponent.h" #include "jucer_TreeViewTypes.h" -#include "jucer_ProjectExporter.h" +#include "../Project Saving/jucer_ProjectExporter.h" //============================================================================== @@ -59,6 +59,8 @@ void ProjectContentComponent::setProject (Project* newProject) { if (project != newProject) { + PropertiesFile& settings = StoredSettings::getInstance()->getProps(); + if (project != nullptr) project->removeChangeListener (this); @@ -67,7 +69,7 @@ void ProjectContentComponent::setProject (Project* newProject) if (projectTree != nullptr) { - StoredSettings::getInstance()->getProps().setValue ("projectTreeviewWidth", projectTree->getWidth()); + settings.setValue ("projectTreeviewWidth", projectTree->getWidth()); projectTree->deleteRootItem(); projectTree = nullptr; } @@ -76,8 +78,7 @@ void ProjectContentComponent::setProject (Project* newProject) if (project != nullptr) { - addAndMakeVisible (projectTree = new TreeView()); - projectTree->setComponentID ("tree"); + addChildAndSetID (projectTree = new TreeView(), "tree"); projectTree->setRootItemVisible (true); projectTree->setMultiSelectEnabled (true); projectTree->setDefaultOpenness (true); @@ -87,15 +88,15 @@ void ProjectContentComponent::setProject (Project* newProject) projectTree->setRootItem (new GroupTreeViewItem (project->getMainGroup())); projectTree->getRootItem()->setOpen (true); - String lastTreeWidth (StoredSettings::getInstance()->getProps().getValue ("projectTreeviewWidth")); + String lastTreeWidth (settings.getValue ("projectTreeviewWidth")); if (lastTreeWidth.getIntValue() < 150) lastTreeWidth = "250"; projectTree->setBounds ("0, 0, left + " + lastTreeWidth + ", parent.height"); - addAndMakeVisible (resizerBar = new ResizableEdgeComponent (projectTree, &treeSizeConstrainer, - ResizableEdgeComponent::rightEdge)); - resizerBar->setComponentID ("resizer"); + addChildAndSetID (resizerBar = new ResizableEdgeComponent (projectTree, &treeSizeConstrainer, ResizableEdgeComponent::rightEdge), + "resizer"); + resizerBar->setBounds ("tree.right, 0, tree.right + 4, parent.height"); project->addChangeListener (this); @@ -104,10 +105,27 @@ void ProjectContentComponent::setProject (Project* newProject) invokeDirectly (CommandIDs::showProjectSettings, true); updateMissingFileStatuses(); + + const ScopedPointer treeOpenness (settings.getXmlValue ("treeViewState_" + project->getProjectUID())); + + if (treeOpenness != nullptr) + projectTree->restoreOpennessState (*treeOpenness, true); } } } +void ProjectContentComponent::saveTreeViewState() +{ + if (projectTree != nullptr) + { + const ScopedPointer opennessState (projectTree->getOpennessState (true)); + + if (opennessState != nullptr) + StoredSettings::getInstance()->getProps() + .setValue ("treeViewState_" + project->getProjectUID(), opennessState); + } +} + void ProjectContentComponent::changeListenerCallback (ChangeBroadcaster*) { updateMissingFileStatuses(); @@ -125,8 +143,7 @@ void ProjectContentComponent::updateMissingFileStatuses() bool ProjectContentComponent::showEditorForFile (const File& f) { - return showDocument (OpenDocumentManager::getInstance() - ->getDocumentForFile (project, f)); + return showDocument (OpenDocumentManager::getInstance()->openFile (project, f)); } bool ProjectContentComponent::showDocument (OpenDocumentManager::Document* doc) @@ -223,7 +240,6 @@ void ProjectContentComponent::getCommandInfo (const CommandID commandID, Applica "Closes the current project", CommandCategories::general, 0); result.setActive (project != nullptr); - result.defaultKeypresses.add (KeyPress ('w', ModifierKeys::commandModifier | ModifierKeys::shiftModifier, 0)); break; case CommandIDs::openInIDE: diff --git a/extras/Introjucer/Source/Project/jucer_ProjectContentComponent.h b/extras/Introjucer/Source/Project/jucer_ProjectContentComponent.h index 7680dc9384..98cca0af4c 100644 --- a/extras/Introjucer/Source/Project/jucer_ProjectContentComponent.h +++ b/extras/Introjucer/Source/Project/jucer_ProjectContentComponent.h @@ -2,7 +2,7 @@ ============================================================================== This file is part of the JUCE library - "Jules' Utility Class Extensions" - Copyright 2004-10 by Raw Material Software Ltd. + Copyright 2004-11 by Raw Material Software Ltd. ------------------------------------------------------------------------------ @@ -45,6 +45,7 @@ public: void paint (Graphics& g); void setProject (Project* project); + void saveTreeViewState(); bool showEditorForFile (const File& f); bool showDocument (OpenDocumentManager::Document* doc); diff --git a/extras/Introjucer/Source/Project/jucer_ProjectExporter.cpp b/extras/Introjucer/Source/Project/jucer_ProjectExporter.cpp deleted file mode 100644 index ac33b1391d..0000000000 --- a/extras/Introjucer/Source/Project/jucer_ProjectExporter.cpp +++ /dev/null @@ -1,271 +0,0 @@ -/* - ============================================================================== - - This file is part of the JUCE library - "Jules' Utility Class Extensions" - Copyright 2004-10 by Raw Material Software Ltd. - - ------------------------------------------------------------------------------ - - JUCE can be redistributed and/or modified under the terms of the GNU General - Public License (Version 2), as published by the Free Software Foundation. - A copy of the license is included in the JUCE distribution, or can be found - online at www.gnu.org/licenses. - - JUCE is distributed in the hope that it will be useful, but WITHOUT ANY - WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR - A PARTICULAR PURPOSE. See the GNU General Public License for more details. - - ------------------------------------------------------------------------------ - - To release a closed-source product which uses JUCE, commercial licenses are - available: visit www.rawmaterialsoftware.com/juce for more information. - - ============================================================================== -*/ - -#include "jucer_ProjectExporter.h" -#include "jucer_ProjectExport_Make.h" -#include "jucer_ProjectExport_MSVC.h" -#include "jucer_ProjectExport_XCode.h" -#include "jucer_ProjectExport_Android.h" - - -//============================================================================== -int ProjectExporter::getNumExporters() -{ - return 6; -} - -StringArray ProjectExporter::getExporterNames() -{ - StringArray s; - s.add (XCodeProjectExporter::getNameMac()); - s.add (XCodeProjectExporter::getNameiOS()); - s.add (MSVCProjectExporterVC6::getName()); - s.add (MSVCProjectExporterVC2005::getName()); - s.add (MSVCProjectExporterVC2008::getName()); - s.add (MSVCProjectExporterVC2010::getName()); - s.add (MakefileProjectExporter::getNameLinux()); - s.add (AndroidProjectExporter::getNameAndroid()); - return s; -} - -ProjectExporter* ProjectExporter::createNewExporter (Project& project, const int index) -{ - ProjectExporter* exp = nullptr; - - switch (index) - { - case 0: exp = new XCodeProjectExporter (project, ValueTree (XCodeProjectExporter::getValueTreeTypeName (false)), false); break; - case 1: exp = new XCodeProjectExporter (project, ValueTree (XCodeProjectExporter::getValueTreeTypeName (true)), true); break; - case 2: exp = new MSVCProjectExporterVC6 (project, ValueTree (MSVCProjectExporterVC6::getValueTreeTypeName())); break; - case 3: exp = new MSVCProjectExporterVC2005 (project, ValueTree (MSVCProjectExporterVC2005::getValueTreeTypeName())); break; - case 4: exp = new MSVCProjectExporterVC2008 (project, ValueTree (MSVCProjectExporterVC2008::getValueTreeTypeName())); break; - case 5: exp = new MSVCProjectExporterVC2010 (project, ValueTree (MSVCProjectExporterVC2010::getValueTreeTypeName())); break; - case 6: exp = new MakefileProjectExporter (project, ValueTree (MakefileProjectExporter::getValueTreeTypeName())); break; - case 7: exp = new AndroidProjectExporter (project, ValueTree (AndroidProjectExporter::getValueTreeTypeName())); break; - default: jassertfalse; return 0; - } - - File juceFolder (StoredSettings::getInstance()->getLastKnownJuceFolder()); - File target (exp->getTargetFolder()); - - if (FileHelpers::shouldPathsBeRelative (juceFolder.getFullPathName(), project.getFile().getFullPathName())) - exp->getJuceFolder() = juceFolder.getRelativePathFrom (project.getFile().getParentDirectory()); - else - exp->getJuceFolder() = juceFolder.getFullPathName(); - - exp->createLibraryModules(); - return exp; -} - -ProjectExporter* ProjectExporter::createExporter (Project& project, const ValueTree& settings) -{ - ProjectExporter* exp = MSVCProjectExporterVC6::createForSettings (project, settings); - if (exp == nullptr) exp = MSVCProjectExporterVC2005::createForSettings (project, settings); - if (exp == nullptr) exp = MSVCProjectExporterVC2008::createForSettings (project, settings); - if (exp == nullptr) exp = MSVCProjectExporterVC2010::createForSettings (project, settings); - if (exp == nullptr) exp = XCodeProjectExporter::createForSettings (project, settings); - if (exp == nullptr) exp = MakefileProjectExporter::createForSettings (project, settings); - if (exp == nullptr) exp = AndroidProjectExporter::createForSettings (project, settings); - - jassert (exp != nullptr); - exp->createLibraryModules(); - return exp; -} - -ProjectExporter* ProjectExporter::createPlatformDefaultExporter (Project& project) -{ - ScopedPointer best; - int bestPref = 0; - - for (int i = 0; i < project.getNumExporters(); ++i) - { - ScopedPointer exp (project.createExporter (i)); - - const int pref = exp->getLaunchPreferenceOrderForCurrentOS(); - - if (pref > bestPref) - { - bestPref = pref; - best = exp; - } - } - - return best.release(); -} - -//============================================================================== -ProjectExporter::ProjectExporter (Project& project_, const ValueTree& settings_) - : xcodeIsBundle (false), - xcodeCreatePList (false), - xcodeCanUseDwarf (true), - makefileIsDLL (false), - msvcIsDLL (false), - msvcIsWindowsSubsystem (true), - msvcNeedsDLLRuntimeLib (false), - project (project_), - projectType (project_.getProjectType()), - projectName (project_.getProjectName().toString()), - projectFolder (project_.getFile().getParentDirectory()), - settings (settings_) -{ - for (int i = 0; i < jmax (1, project.getNumConfigurations()); ++i) - configs.add (project.getConfiguration (i)); - - groups.add (project.getMainGroup().createCopy()); -} - -ProjectExporter::~ProjectExporter() -{ -} - -void ProjectExporter::createLibraryModules() -{ - libraryModules.clear(); - project.getProjectType().createRequiredModules (project, libraryModules); -} - -File ProjectExporter::getTargetFolder() const -{ - return project.resolveFilename (getTargetLocation().toString()); -} - -String ProjectExporter::getIncludePathForFileInJuceFolder (const String& pathFromJuceFolder, const File& targetIncludeFile) const -{ - String juceFolderPath (getJuceFolder().toString()); - - if (juceFolderPath.startsWithChar ('<')) - { - juceFolderPath = FileHelpers::unixStylePath (File::addTrailingSeparator (juceFolderPath.substring (1).dropLastCharacters(1))); - if (juceFolderPath == "/") - juceFolderPath = String::empty; - - return "<" + juceFolderPath + pathFromJuceFolder + ">"; - } - else - { - const RelativePath juceFromProject (juceFolderPath, RelativePath::projectFolder); - const RelativePath fileFromProject (juceFromProject.getChildFile (pathFromJuceFolder)); - const RelativePath fileFromHere (fileFromProject.rebased (project.getFile().getParentDirectory(), - targetIncludeFile.getParentDirectory(), RelativePath::unknown)); - return fileFromHere.toUnixStyle().quoted(); - } -} - -RelativePath ProjectExporter::getJucePathFromProjectFolder() const -{ - return RelativePath (getJuceFolder().toString(), RelativePath::projectFolder); -} - -RelativePath ProjectExporter::getJucePathFromTargetFolder() const -{ - return rebaseFromProjectFolderToBuildTarget (getJucePathFromProjectFolder()); -} - -RelativePath ProjectExporter::rebaseFromProjectFolderToBuildTarget (const RelativePath& path) const -{ - return path.rebased (project.getFile().getParentDirectory(), getTargetFolder(), RelativePath::buildTargetFolder); -} - -bool ProjectExporter::shouldFileBeCompiledByDefault (const RelativePath& file) const -{ - return file.hasFileExtension ("cpp;cc;c;cxx"); -} - -void ProjectExporter::createPropertyEditors (Array & props) -{ - props.add (new TextPropertyComponent (getTargetLocation(), "Target Project Folder", 1024, false)); - props.getLast()->setTooltip ("The location of the folder in which the " + name + " project will be created. This path can be absolute, but it's much more sensible to make it relative to the jucer project directory."); - - props.add (new TextPropertyComponent (getJuceFolder(), "Juce Location", 1024, false)); - props.getLast()->setTooltip ("The location of the Juce library folder that the " + name + " project will use to when compiling. This can be an absolute path, or relative to the jucer project folder, but it must be valid on the filesystem of the machine you use to actually do the compiling."); - - for (int i = 0; i < libraryModules.size(); ++i) - libraryModules.getUnchecked(i)->createPropertyEditors (*this, props); - - props.add (new TextPropertyComponent (getExporterPreprocessorDefs(), "Extra Preprocessor Definitions", 32768, false)); - props.getLast()->setTooltip ("Extra preprocessor definitions. Use the form \"NAME1=value NAME2=value\", using whitespace or commas to separate the items - to include a space or comma in a definition, precede it with a backslash."); - - props.add (new TextPropertyComponent (getExtraCompilerFlags(), "Extra compiler flags", 2048, false)); - props.getLast()->setTooltip ("Extra command-line flags to be passed to the compiler. This string can contain references to preprocessor definitions in the form ${NAME_OF_DEFINITION}, which will be replaced with their values."); - props.add (new TextPropertyComponent (getExtraLinkerFlags(), "Extra linker flags", 2048, false)); - props.getLast()->setTooltip ("Extra command-line flags to be passed to the linker. You might want to use this for adding additional libraries. This string can contain references to preprocessor definitions in the form ${NAME_OF_VALUE}, which will be replaced with their values."); -} - -StringPairArray ProjectExporter::getAllPreprocessorDefs (const Project::BuildConfiguration& config) const -{ - StringPairArray defs (mergePreprocessorDefs (config.getAllPreprocessorDefs(), - parsePreprocessorDefs (getExporterPreprocessorDefs().toString()))); - defs.set (getExporterIdentifierMacro(), "1"); - return defs; -} - -StringPairArray ProjectExporter::getAllPreprocessorDefs() const -{ - StringPairArray defs (mergePreprocessorDefs (project.getPreprocessorDefs(), - parsePreprocessorDefs (getExporterPreprocessorDefs().toString()))); - defs.set (getExporterIdentifierMacro(), "1"); - return defs; -} - -String ProjectExporter::replacePreprocessorTokens (const Project::BuildConfiguration& config, const String& sourceString) const -{ - return replacePreprocessorDefs (getAllPreprocessorDefs (config), sourceString); -} - -Image ProjectExporter::getBestIconForSize (int size, bool returnNullIfNothingBigEnough) -{ - Image im; - - const Image im1 (project.getSmallIcon()); - const Image im2 (project.getBigIcon()); - - if (im1.isValid() && im2.isValid()) - { - if (im1.getWidth() >= size && im2.getWidth() >= size) - im = im1.getWidth() < im2.getWidth() ? im1 : im2; - else if (im1.getWidth() >= size) - im = im1; - else if (im2.getWidth() >= size) - im = im2; - else - return Image::null; - } - else - { - im = im1.isValid() ? im1 : im2; - } - - if (size == im.getWidth() && size == im.getHeight()) - return im; - - if (returnNullIfNothingBigEnough && im.getWidth() < size && im.getHeight() < size) - return Image::null; - - Image newIm (Image::ARGB, size, size, true, Image::SoftwareImage); - Graphics g (newIm); - g.drawImageWithin (im, 0, 0, size, size, - RectanglePlacement::centred | RectanglePlacement::onlyReduceInSize, false); - return newIm; -} diff --git a/extras/Introjucer/Source/Project/jucer_ProjectInformationComponent.cpp b/extras/Introjucer/Source/Project/jucer_ProjectInformationComponent.cpp index 76c06d3f6a..1dceb8b83e 100644 --- a/extras/Introjucer/Source/Project/jucer_ProjectInformationComponent.cpp +++ b/extras/Introjucer/Source/Project/jucer_ProjectInformationComponent.cpp @@ -1,204 +1,901 @@ /* ============================================================================== - This is an automatically generated file created by the Jucer! + This is an automatically generated file! Be careful when adding custom code to these files, as only the code within the "//[xyz]" and "//[/xyz]" sections will be retained when the file is loaded and re-saved. - Created for JUCE version: JUCE v1.53.8 + Created for JUCE version: JUCE v2.0.16 ------------------------------------------------------------------------------ - JUCE and the Jucer are copyright 2004-10 by Raw Material Software ltd. + JUCE is copyright 2004-11 by Raw Material Software ltd. ============================================================================== */ //[CppHeaders] You can add your own extra header files here... -#include "jucer_ProjectExporter.h" +#include "../Project Saving/jucer_ProjectExporter.h" +#include "jucer_Module.h" +#include "../Application/jucer_JuceUpdater.h" //[/CppHeaders] #include "jucer_ProjectInformationComponent.h" //[MiscUserDefs] You can add your own user definitions and misc code here... -class PropertiesWithHelpComponent : public PropertyPanelWithTooltips + + +//============================================================================== +class ModulesPanel : public PropertyComponent, + public FilenameComponentListener, + public ButtonListener { public: - PropertiesWithHelpComponent (Project& project_, int tabIndex_) - : project (project_), tabIndex (tabIndex_) + ModulesPanel (Project& project_) + : PropertyComponent ("Modules", 500), + project (project_), + modulesLocation ("modules", ModuleList::getLocalModulesFolder (&project), + true, true, false, "*", String::empty, + "Select a folder containing your JUCE modules..."), + modulesLabel (String::empty, "Module source folder:"), + updateModulesButton ("Check for module updates..."), + moduleListBox (moduleList), + copyingMessage (project_, moduleList) { + moduleList.rescan (ModuleList::getLocalModulesFolder (&project)); + + addAndMakeVisible (&modulesLocation); + modulesLocation.setBounds ("150, 3, parent.width - 180, 28"); + modulesLocation.addListener (this); + + modulesLabel.attachToComponent (&modulesLocation, true); + + addAndMakeVisible (&updateModulesButton); + updateModulesButton.setBounds ("parent.width - 175, 3, parent.width - 4, 28"); + updateModulesButton.addListener (this); + + moduleListBox.setOwner (this); + addAndMakeVisible (&moduleListBox); + moduleListBox.setBounds ("4, 31, parent.width / 2 - 4, parent.height - 32"); + + addAndMakeVisible (©ingMessage); + copyingMessage.setBounds ("4, parent.height - 30, parent.width - 4, parent.height - 1"); + copyingMessage.refresh(); } - void rebuildProperties() + void filenameComponentChanged (FilenameComponent*) { - getPanel().clear(); - Array props; + moduleList.rescan (modulesLocation.getCurrentFile()); + modulesLocation.setCurrentFile (moduleList.getModulesFolder(), false, false); + ModuleList::setLocalModulesFolder (moduleList.getModulesFolder()); + moduleListBox.refresh(); + } - if (tabIndex == 0) + void buttonClicked (Button*) + { + JuceUpdater::show (moduleList, getTopLevelComponent(), ""); + + filenameComponentChanged (nullptr); + } + + bool isEnabled (const ModuleList::Module* m) const + { + return project.isModuleEnabled (m->uid); + } + + void setEnabled (const ModuleList::Module* m, bool enable) + { + if (enable) + project.addModule (m->uid, true); + else + project.removeModule (m->uid); + + refresh(); + } + + bool areDependenciesMissing (const ModuleList::Module* m) + { + return moduleList.getExtraDependenciesNeeded (project, *m).size() > 0; + } + + void selectionChanged (const ModuleList::Module* selectedModule) + { + settings = nullptr; + + if (selectedModule != nullptr) { - // The main project tab... - project.createPropertyEditors (props); + addAndMakeVisible (settings = new ModuleSettingsPanel (project, moduleList, selectedModule->uid)); + settings->setBounds ("parent.width / 2 + 1, 31, parent.width - 3, parent.height - 32"); } - else if (tabIndex == 1) + + copyingMessage.refresh(); + } + + void refresh() + { + moduleListBox.refresh(); + + if (settings != nullptr) + settings->refreshAll(); + + copyingMessage.refresh(); + } + + void paint (Graphics& g) // (overridden to avoid drawing the name) + { + getLookAndFeel().drawPropertyComponentBackground (g, getWidth(), getHeight(), *this); + } + + //============================================================================== + class ModuleSelectionListBox : public ListBox, + public ListBoxModel + { + public: + ModuleSelectionListBox (ModuleList& list_) + : list (list_), owner (nullptr) { - // The Juce options tab... - OwnedArray flags; - project.getAllConfigFlags (flags); + setColour (ListBox::backgroundColourId, Colours::white.withAlpha (0.4f)); + setTooltip ("Use this list to select which modules should be included in your app.\n" + "Any modules which have missing dependencies will be shown in red."); + } - StringArray possibleValues; - possibleValues.add ("(Use default from juce_Config.h)"); - possibleValues.add ("Enabled"); - possibleValues.add ("Disabled"); + void setOwner (ModulesPanel* owner_) + { + owner = owner_; + setModel (this); + } - Array mappings; - mappings.add (Project::configFlagDefault); - mappings.add (Project::configFlagEnabled); - mappings.add (Project::configFlagDisabled); + void refresh() + { + updateContent(); + repaint(); + } - for (int i = 0; i < flags.size(); ++i) + int getNumRows() + { + return list.modules.size(); + } + + void paintListBoxItem (int rowNumber, Graphics& g, int width, int height, bool rowIsSelected) + { + if (rowIsSelected) + g.fillAll (findColour (TextEditor::highlightColourId)); + + const ModuleList::Module* const m = list.modules [rowNumber]; + + if (m != nullptr) { - ChoicePropertyComponent* c = new ChoicePropertyComponent (flags[i]->value, flags[i]->symbol, possibleValues, mappings); - c->setTooltip (flags[i]->description); - c->setPreferredHeight (22); - props.add (c); + const float tickSize = height * 0.7f; + + getLookAndFeel().drawTickBox (g, *this, (height - tickSize) / 2, (height - tickSize) / 2, tickSize, tickSize, + owner->isEnabled (m), true, false, false); + + if (owner->isEnabled (m) && owner->areDependenciesMissing (m)) + g.setColour (Colours::red); + else + g.setColour (Colours::black); + + g.setFont (height * 0.7f, Font::bold); + g.drawFittedText (m->uid, height, 0, 200, height, Justification::centredLeft, 1); + + g.setFont (height * 0.55f, Font::italic); + g.drawText (m->name, height + 200, 0, width - height - 200, height, Justification::centredLeft, true); } } - else if (tabIndex < 2 + project.getNumConfigurations()) - { - // A config tab.. - project.getConfiguration (tabIndex - 2).createPropertyEditors (props); - } - else - { - // An export tab.. - ScopedPointer exp (project.createExporter (tabIndex - (2 + project.getNumConfigurations()))); - if (exp != nullptr) - exp->createPropertyEditors (props); - - for (int i = props.size(); --i >= 0;) - props.getUnchecked(i)->setPreferredHeight (22); + void listBoxItemClicked (int row, const MouseEvent& e) + { + if (e.x < getRowHeight()) + flipRow (row); } - getPanel().addProperties (props); + void listBoxItemDoubleClicked (int row, const MouseEvent& e) + { + flipRow (row); + } + + void returnKeyPressed (int row) + { + flipRow (row); + } + + void selectedRowsChanged (int lastRowSelected) + { + owner->selectionChanged (list.modules [lastRowSelected]); + } + + void flipRow (int row) + { + const ModuleList::Module* const m = list.modules [row]; + + if (m != nullptr) + owner->setEnabled (m, ! owner->isEnabled (m)); + } + + private: + ModuleList& list; + ModulesPanel* owner; + }; + + //============================================================================== + class ModuleSettingsPanel : public PropertyPanel + { + public: + ModuleSettingsPanel (Project& project_, ModuleList& moduleList_, const String& moduleID_) + : project (project_), moduleList (moduleList_), moduleID (moduleID_) + { + refreshAll(); + } + + void refreshAll() + { + setEnabled (project.isModuleEnabled (moduleID)); + + clear(); + PropertyListBuilder props; + + ScopedPointer module (moduleList.loadModule (moduleID)); + + if (module != nullptr) + { + props.add (new ModuleInfoComponent (project, moduleList, moduleID)); + + if (project.isModuleEnabled (moduleID)) + { + const ModuleList::Module* m = moduleList.findModuleInfo (moduleID); + if (m != nullptr && moduleList.getExtraDependenciesNeeded (project, *m).size() > 0) + props.add (new MissingDependenciesComponent (project, moduleList, moduleID)); + } + + props.add (new BooleanPropertyComponent (project.shouldShowAllModuleFilesInProject (moduleID), + "Add source to project", "Make module files browsable in projects"), + "If this is enabled, then the entire source tree from this module will be shown inside your project, " + "making it easy to browse/edit the module's classes. If disabled, then only the minimum number of files " + "required to compile it will appear inside your project."); + + props.add (new BooleanPropertyComponent (project.shouldCopyModuleFilesLocally (moduleID), + "Create local copy", "Copy the module into the project folder"), + "If this is enabled, then a local copy of the entire module will be made inside your project (in the auto-generated JuceLibraryFiles folder), " + "so that your project will be self-contained, and won't need to contain any references to files in other folders. " + "This also means that you can check the module into your source-control system to make sure it is always in sync with your own code."); + + StringArray possibleValues; + possibleValues.add ("(Use Default)"); + possibleValues.add ("Enabled"); + possibleValues.add ("Disabled"); + + Array mappings; + mappings.add (Project::configFlagDefault); + mappings.add (Project::configFlagEnabled); + mappings.add (Project::configFlagDisabled); + + OwnedArray flags; + module->getConfigFlags (project, flags); + + for (int i = 0; i < flags.size(); ++i) + { + ChoicePropertyComponent* c = new ChoicePropertyComponent (flags[i]->value, flags[i]->symbol, possibleValues, mappings); + c->setTooltip (flags[i]->description); + c->setPreferredHeight (22); + props.add (c); + } + } + + addProperties (props.components); + } + + private: + Project& project; + ModuleList& moduleList; + String moduleID; + + //============================================================================== + class ModuleInfoComponent : public PropertyComponent + { + public: + ModuleInfoComponent (Project& project_, ModuleList& moduleList_, const String& moduleID_) + : PropertyComponent ("Module", 100), project (project_), moduleList (moduleList_), moduleID (moduleID_) + { + } + + void refresh() {} + + void paint (Graphics& g) + { + g.setColour (Colours::white.withAlpha (0.4f)); + g.fillRect (0, 0, getWidth(), getHeight() - 1); + + const ModuleList::Module* module = moduleList.findModuleInfo (moduleID); + + if (module != nullptr) + { + String text; + text << module->name << newLine << "Version: " << module->version << newLine << newLine + << module->description; + + GlyphArrangement ga; + ga.addJustifiedText (Font (13.0f), text, 4.0f, 16.0f, getWidth() - 8.0f, Justification::topLeft); + g.setColour (Colours::black); + ga.draw (g); + } + } + + private: + Project& project; + ModuleList& moduleList; + String moduleID; + + JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (ModuleInfoComponent); + }; + + //============================================================================== + class MissingDependenciesComponent : public PropertyComponent, + public ButtonListener + { + public: + MissingDependenciesComponent (Project& project_, ModuleList& moduleList_, const String& moduleID_) + : PropertyComponent ("Dependencies", 100), + project (project_), moduleList (moduleList_), moduleID (moduleID_), + fixButton ("Enable Required Modules") + { + const ModuleList::Module* module = moduleList.findModuleInfo (moduleID); + + if (module != nullptr) + missingDependencies = moduleList.getExtraDependenciesNeeded (project, *module); + + addAndMakeVisible (&fixButton); + fixButton.setColour (TextButton::buttonColourId, Colours::red); + fixButton.setColour (TextButton::textColourOffId, Colours::white); + fixButton.setBounds ("right - 160, parent.height - 26, parent.width - 8, top + 22"); + fixButton.addListener (this); + } + + void refresh() {} + + void paint (Graphics& g) + { + g.setColour (Colours::white.withAlpha (0.4f)); + g.fillRect (0, 0, getWidth(), getHeight() - 1); + + String text ("This module requires the following dependencies:\n"); + text << missingDependencies.joinIntoString (", "); + + GlyphArrangement ga; + ga.addJustifiedText (Font (13.0f), text, 4.0f, 16.0f, getWidth() - 8.0f, Justification::topLeft); + g.setColour (Colours::red); + ga.draw (g); + } + + void buttonClicked (Button*) + { + bool isModuleCopiedLocally = project.shouldCopyModuleFilesLocally (moduleID).getValue(); + + for (int i = missingDependencies.size(); --i >= 0;) + project.addModule (missingDependencies[i], isModuleCopiedLocally); + + ModulesPanel* mp = findParentComponentOfClass ((ModulesPanel*) nullptr); + if (mp != nullptr) + mp->refresh(); + } + + private: + Project& project; + ModuleList& moduleList; + String moduleID; + StringArray missingDependencies; + TextButton fixButton; + + JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (MissingDependenciesComponent); + }; + }; + + //============================================================================== + class ModuleCopyingMessage : public Component + { + public: + ModuleCopyingMessage (Project& project_, ModuleList& list_) + : project (project_), list (list_) + { + } + + void paint (Graphics& g) + { + g.setFont (13.0f); + g.setColour (Colours::darkred); + g.drawFittedText (getName(), 4, 0, getWidth() - 8, getHeight(), Justification::centredRight, 4); + } + + void refresh() + { + int numCopied, numNonCopied; + countCopiedModules (numCopied, numNonCopied); + + if (numCopied > 0 && numNonCopied > 0) + setName ("Warning! Some of your modules are set to use local copies, and others are using remote references.\n" + "This may create problems if some modules expect to share the same parent folder, so you may " + "want to make sure that they are all either copied or not."); + else + setName (String::empty); + + repaint(); + } + + void countCopiedModules (int& numCopied, int& numNonCopied) + { + numCopied = numNonCopied = 0; + + for (int i = list.modules.size(); --i >= 0;) + { + const String moduleID (list.modules.getUnchecked(i)->uid); + + if (project.isModuleEnabled (moduleID)) + { + if (project.shouldCopyModuleFilesLocally (moduleID).getValue()) + ++numCopied; + else + ++numNonCopied; + } + } + } + + private: + Project& project; + ModuleList& list; + }; + +private: + Project& project; + ModuleList moduleList; + FilenameComponent modulesLocation; + Label modulesLabel; + TextButton updateModulesButton; + ModuleSelectionListBox moduleListBox; + ModuleCopyingMessage copyingMessage; + ScopedPointer settings; +}; + + +//============================================================================== +class ProjectSettingsComponent : public Component +{ +public: + ProjectSettingsComponent (Project& project_) + : project (project_), + exporters ("Export Targets", "Add a New Exporter...", true, false) + { + addAndMakeVisible (&mainProjectInfoPanel); + addAndMakeVisible (&modulesPanelGroup); + addAndMakeVisible (&exporters); + + mainProjectInfoPanel.fillBackground = true; + modulesPanelGroup.fillBackground = true; + } + + void updateSize (int width) + { + width = jmax (550, width - 6); + + int y = 0; + y += mainProjectInfoPanel.updateSize (y, width); + y += modulesPanelGroup.updateSize (y, width); + y += exporters.updateSize (y, width); + + setSize (width, y); + } + + void parentSizeChanged() + { + updateSize (getParentWidth()); } void visibilityChanged() { if (isVisible()) - rebuildProperties(); + createAllPanels(); + } + + void createModulesPanel() + { + PropertyListBuilder props; + props.add (new ModulesPanel (project)); + modulesPanelGroup.setProperties (props); + modulesPanelGroup.setName ("Modules"); + } + + void createProjectPanel() + { + PropertyListBuilder props; + project.createPropertyEditors (props); + mainProjectInfoPanel.setProperties (props); + mainProjectInfoPanel.setName ("Project Settings"); + + lastProjectType = project.getProjectTypeValue().getValue(); + } + + void createExportersPanel() + { + exporters.clear(); + + for (Project::ExporterIterator exporter (project); exporter.next();) + { + PropertyGroup* exporterGroup = exporters.createGroup(); + exporterGroup->fillBackground = true; + exporterGroup->addDeleteButton ("exporter " + String (exporter.index), "Deletes this export target."); + + PropertyListBuilder props; + exporter->createPropertyEditors (props); + + PropertyGroupList* configList = new PropertyGroupList ("Configurations", "Add a New Configuration", false, true); + props.add (configList); + exporterGroup->setProperties (props); + + configList->createNewButton.setName ("newconfig " + String (exporter.index)); + + for (ProjectExporter::ConfigIterator config (*exporter); config.next();) + { + PropertyGroup* configGroup = configList->createGroup(); + + if (exporter->getNumConfigurations() > 1) + configGroup->addDeleteButton ("config " + String (exporter.index) + "/" + String (config.index), "Deletes this configuration."); + + PropertyListBuilder configProps; + config->createPropertyEditors (configProps); + configGroup->setProperties (configProps); + } + } + } + + void createAllPanels() + { + createProjectPanel(); + createModulesPanel(); + createExportersPanel(); + updateNames(); + + updateSize (getWidth()); + } + + bool needsFullUpdate() const + { + if (exporters.groups.size() != project.getNumExporters() + || lastProjectType != project.getProjectTypeValue().getValue()) + return true; + + for (int i = exporters.groups.size(); --i >= 0;) + { + ScopedPointer exp (project.createExporter (i)); + + jassert (exp != nullptr); + if (exp != nullptr) + { + PropertyGroupList* configList = dynamic_cast (exporters.groups.getUnchecked(i)->properties.getLast()); + + if (configList != nullptr && configList->groups.size() != exp->getNumConfigurations()) + return true; + } + } + + return false; + } + + void updateNames() + { + for (int i = exporters.groups.size(); --i >= 0;) + { + PropertyGroup& exporterGroup = *exporters.groups.getUnchecked(i); + ScopedPointer exp (project.createExporter (i)); + jassert (exp != nullptr); + + if (exp != nullptr) + { + exporterGroup.setName (exp->getName()); + exporterGroup.repaint(); + + PropertyGroupList* configList = dynamic_cast (exporterGroup.properties.getLast()); + + if (configList != nullptr) + { + for (int j = configList->groups.size(); --j >= 0;) + { + PropertyGroup& configGroup = *configList->groups.getUnchecked(j); + configGroup.setName ("Configuration: " + exp->getConfiguration (j)->getName().toString().quoted()); + configGroup.repaint(); + } + } + } + } + } + + void update() + { + if (needsFullUpdate()) + createAllPanels(); + else + updateNames(); + } + + void deleteButtonClicked (const String& name) + { + if (name.startsWith ("config")) + { + int exporterIndex = name.upToLastOccurrenceOf ("/", false, false).getTrailingIntValue(); + int configIndex = name.getTrailingIntValue(); + + ScopedPointer exporter (project.createExporter (exporterIndex)); + jassert (exporter != nullptr); + + if (exporter != nullptr) + exporter->deleteConfiguration (configIndex); + } + else + { + project.deleteExporter (name.getTrailingIntValue()); + } + } + + static void newExporterMenuItemChosen (int resultCode, ProjectSettingsComponent* settingsComp) + { + if (resultCode > 0 && settingsComp != nullptr) + settingsComp->project.addNewExporter (ProjectExporter::getExporterNames() [resultCode - 1]); + } + + void createNewExporter (TextButton& button) + { + PopupMenu menu; + + const StringArray exporters (ProjectExporter::getExporterNames()); + + for (int i = 0; i < exporters.size(); ++i) + menu.addItem (i + 1, "Create a new " + exporters[i] + " target"); + + menu.showMenuAsync (PopupMenu::Options().withTargetComponent (&button), + ModalCallbackFunction::forComponent (newExporterMenuItemChosen, this)); + } + + void createNewConfig (int exporterIndex) + { + ScopedPointer exp (project.createExporter (exporterIndex)); + jassert (exp != nullptr); + + if (exp != nullptr) + exp->addNewConfiguration (nullptr); + } + + void newItemButtonClicked (TextButton& button) + { + if (button.getName().containsIgnoreCase ("export")) + createNewExporter (button); + else if (button.getName().containsIgnoreCase ("newconfig")) + createNewConfig (button.getName().getTrailingIntValue()); } private: + //============================================================================== + class PropertyGroup : public Component, + public ButtonListener + { + public: + PropertyGroup() + : deleteButton ("Delete"), fillBackground (false) + { + deleteButton.addListener (this); + } + + void addDeleteButton (const String& name, const String& tooltip) + { + addAndMakeVisible (&deleteButton); + deleteButton.setBounds ("right - 55, 11, parent.width - 10, 26"); + deleteButton.setColour (TextButton::buttonColourId, Colour (0xa0fcbdbd)); + deleteButton.setColour (TextButton::textColourOffId, Colours::darkred); + deleteButton.setConnectedEdges (Button::ConnectedOnLeft | Button::ConnectedOnRight); + deleteButton.setName (name); + deleteButton.setTooltip (tooltip); + } + + void setProperties (const PropertyListBuilder& newProps) + { + properties.clear(); + properties.addArray (newProps.components); + + for (int i = properties.size(); --i >= 0;) + addAndMakeVisible (properties.getUnchecked(i)); + } + + int updateSize (int y, int width) + { + int height = fillBackground ? 36 : 32; + + for (int i = 0; i < properties.size(); ++i) + { + PropertyComponent* pp = properties.getUnchecked(i); + PropertyGroupList* pgl = dynamic_cast (pp); + + if (pgl != nullptr) + pgl->updateSize (height, width - 20); + + pp->setBounds (10, height, width - 20, pp->getPreferredHeight()); + height += pp->getHeight(); + } + + height += 16; + setBounds (0, y, width, height); + return height; + } + + void paint (Graphics& g) + { + if (fillBackground) + { + g.setColour (Colours::white.withAlpha (0.3f)); + g.fillRect (0, 28, getWidth(), getHeight() - 38); + + g.setColour (Colours::black.withAlpha (0.4f)); + g.drawRect (0, 28, getWidth(), getHeight() - 38); + } + + g.setFont (14.0f, Font::bold); + g.setColour (Colours::black); + g.drawFittedText (getName(), 12, 0, getWidth() - 16, 26, Justification::bottomLeft, 1); + } + + void buttonClicked (Button*) + { + ProjectSettingsComponent* psc = findParentComponentOfClass ((ProjectSettingsComponent*) nullptr); + if (psc != nullptr) + psc->deleteButtonClicked (deleteButton.getName()); + } + + OwnedArray properties; + TextButton deleteButton; + bool fillBackground; + }; + + //============================================================================== + class PropertyGroupList : public PropertyComponent, + public ButtonListener + { + public: + PropertyGroupList (const String& title, const String& newButtonText, + bool triggerOnMouseDown, bool hideNameAndPutButtonAtBottom) + : PropertyComponent (title), createNewButton (newButtonText), + dontDisplayName (hideNameAndPutButtonAtBottom) + { + addAndMakeVisible (&createNewButton); + createNewButton.setColour (TextButton::buttonColourId, Colours::lightgreen.withAlpha (0.5f)); + createNewButton.setBounds (hideNameAndPutButtonAtBottom ? "right - 140, parent.height - 25, parent.width - 10, top + 20" + : "right - 140, 30, parent.width - 10, top + 20"); + createNewButton.setConnectedEdges (Button::ConnectedOnLeft | Button::ConnectedOnRight); + createNewButton.addListener (this); + createNewButton.setTriggeredOnMouseDown (triggerOnMouseDown); + } + + int updateSize (int ourY, int width) + { + int y = dontDisplayName ? 10 : 55; + + for (int i = 0; i < groups.size(); ++i) + y += groups.getUnchecked(i)->updateSize (y, width); + + y = jmax (y, 100); + setBounds (0, ourY, width, y); + + if (dontDisplayName) + y += 25; + + setPreferredHeight (y); + return y; + } + + void paint (Graphics& g) + { + if (! dontDisplayName) + { + g.setFont (17.0f, Font::bold); + g.setColour (Colours::black); + g.drawFittedText (getName(), 0, 30, getWidth(), 20, Justification::centred, 1); + } + } + + void clear() + { + groups.clear(); + } + + void refresh() {} + + PropertyGroup* createGroup() + { + PropertyGroup* p = new PropertyGroup(); + groups.add (p); + addAndMakeVisible (p); + return p; + } + + void buttonClicked (Button*) + { + ProjectSettingsComponent* psc = findParentComponentOfClass ((ProjectSettingsComponent*) nullptr); + if (psc != nullptr) + psc->newItemButtonClicked (createNewButton); + } + + OwnedArray groups; + TextButton createNewButton; + bool dontDisplayName; + }; + Project& project; - int tabIndex; + var lastProjectType; + PropertyGroup mainProjectInfoPanel, modulesPanelGroup; + PropertyGroupList exporters; + + JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (ProjectSettingsComponent); }; + //[/MiscUserDefs] //============================================================================== ProjectInformationComponent::ProjectInformationComponent (Project& project_) - : project (project_), - configTabBox (TabbedButtonBar::TabsAtTop) + : project (project_) { - addAndMakeVisible (&configTabBox); - configTabBox.setBounds ("8, 0, this.left + parent.width - 16, this.top + parent.height - 36"); - addAndMakeVisible (&editConfigsButton); - editConfigsButton.setBounds ("8, parent.height - 30, this.left + 192, this.top + 22"); - editConfigsButton.setButtonText ("Add/Remove Configurations..."); - editConfigsButton.addListener (this); - addAndMakeVisible (&openProjectButton); - openProjectButton.setBounds ("608, parent.height - 30, this.left + 208, this.top + 22"); - openProjectButton.setButtonText ("Open Project in "); + //[Constructor_pre] + //[/Constructor_pre] + + addChildAndSetID (&viewport, "ykdBpb"); + addChildAndSetID (&openProjectButton, "a550a652e2666ee7"); + addChildAndSetID (&saveAndOpenButton, "dRGMyYx"); + addChildAndSetID (&rollover, "QqLJBF"); + + initialiseComponentState(); openProjectButton.addListener (this); - addAndMakeVisible (&editExportersButton); - editExportersButton.setBounds ("208, parent.height - 30, this.left + 160, this.top + 22"); - editExportersButton.setButtonText ("Add/Remove Exporters..."); - editExportersButton.addListener (this); - addAndMakeVisible (&saveAndOpenButton); - saveAndOpenButton.setBounds ("391, parent.height - 30, this.left + 208, this.top + 22"); - saveAndOpenButton.setButtonText ("Save And Open in"); saveAndOpenButton.addListener (this); //[UserPreSize] - rebuildConfigTabs(); + viewport.setViewedComponent (new ProjectSettingsComponent (project), true); -#if JUCE_MAC || JUCE_WINDOWS + #if JUCE_MAC || JUCE_WINDOWS openProjectButton.setCommandToTrigger (commandManager, CommandIDs::openInIDE, true); openProjectButton.setButtonText (commandManager->getNameOfCommand (CommandIDs::openInIDE)); saveAndOpenButton.setCommandToTrigger (commandManager, CommandIDs::saveAndOpenInIDE, true); saveAndOpenButton.setButtonText (commandManager->getNameOfCommand (CommandIDs::saveAndOpenInIDE)); -#else + #else openProjectButton.setVisible (false); saveAndOpenButton.setVisible (false); -#endif + #endif //[/UserPreSize] - setSize (836, 427); - - //[Constructor] You can add your own custom stuff here.. - configTabBox.setOutline (1); - configTabBox.setColour (TabbedComponent::outlineColourId, Colours::black.withAlpha (0.3f)); - - editConfigsButton.setTriggeredOnMouseDown (true); + setSize (808, 638); + //[Constructor] project.addChangeListener (this); //[/Constructor] } ProjectInformationComponent::~ProjectInformationComponent() { - //[Destructor_pre]. You can add your own custom destruction code here.. + //[Destructor] project.removeChangeListener (this); - //[/Destructor_pre] - - - - //[Destructor]. You can add your own custom destruction code here.. //[/Destructor] } //============================================================================== -void ProjectInformationComponent::resized() -{ - //[Userresized_Pre] - //[/Userresized_Pre] - - - - //[Userresized_Post] - //[/Userresized_Post] -} - void ProjectInformationComponent::buttonClicked (Button* buttonThatWasClicked) { //[UserbuttonClicked_Pre] //[/UserbuttonClicked_Pre] - if (buttonThatWasClicked == &editConfigsButton) + if (buttonThatWasClicked == &openProjectButton) { - //[UserButtonCode_b6625dfcdb1f4755] -- add your button handler code here.. - showConfigMenu(); - //[/UserButtonCode_b6625dfcdb1f4755] - } - else if (buttonThatWasClicked == &openProjectButton) - { - //[UserButtonCode_a550a652e2666ee7] -- add your button handler code here.. - //[/UserButtonCode_a550a652e2666ee7] - } - else if (buttonThatWasClicked == &editExportersButton) - { - //[UserButtonCode_c1f6e5f9811b307e] -- add your button handler code here.. - showExporterMenu(); - //[/UserButtonCode_c1f6e5f9811b307e] + //[UserButtonCode_openProjectButton] -- add your button handler code here.. + //[/UserButtonCode_openProjectButton] } else if (buttonThatWasClicked == &saveAndOpenButton) { - //[UserButtonCode_dRGMyYx] -- add your button handler code here.. - //[/UserButtonCode_dRGMyYx] + //[UserButtonCode_saveAndOpenButton] -- add your button handler code here.. + //[/UserButtonCode_saveAndOpenButton] } //[UserbuttonClicked_Post] @@ -207,7 +904,7 @@ void ProjectInformationComponent::buttonClicked (Button* buttonThatWasClicked) void ProjectInformationComponent::paint (Graphics& g) { - //[UserPaint] Add your own custom painting code here.. + //[UserPaint] g.setTiledImageFill (ImageCache::getFromMemory (BinaryData::brushed_aluminium_png, BinaryData::brushed_aluminium_pngSize), 0, 0, 1.0f); g.fillAll(); @@ -215,169 +912,65 @@ void ProjectInformationComponent::paint (Graphics& g) //[/UserPaint] } - - //[MiscUserCode] You can add your own definitions of your custom methods or any other code here... -void ProjectInformationComponent::rebuildConfigTabs() -{ - configTabBox.clearTabs(); - - int index = 0; - PropertiesWithHelpComponent* panel = new PropertiesWithHelpComponent (project, index++); - configTabBox.addTab ("Project Settings", Colours::lightslategrey, panel, true, -1); - - panel = new PropertiesWithHelpComponent (project, index++); - configTabBox.addTab ("Juce Flags", Colours::lightblue, panel, true, -1); - - int i; - for (i = 0; i < project.getNumConfigurations(); ++i) - { - panel = new PropertiesWithHelpComponent (project, index++); - Project::BuildConfiguration config (project.getConfiguration (i)); - configTabBox.addTab (config.getName().toString(), Colour::greyLevel (0.65f), panel, true, -1); - } - - for (i = 0; i < project.getNumExporters(); ++i) - { - ScopedPointer exp (project.createExporter (i)); - - if (exp != nullptr) - { - panel = new PropertiesWithHelpComponent (project, index++); - configTabBox.addTab (exp->getName(), Colours::lightsteelblue, panel, true, -1); - } - } - - lastProjectType = project.getProjectTypeValue().getValue(); -} - -void ProjectInformationComponent::updateConfigTabs() -{ - if (configTabBox.getNumTabs() != project.getNumConfigurations() + project.getNumExporters() + 2 - || lastProjectType != project.getProjectTypeValue().getValue()) - { - rebuildConfigTabs(); - } - else - { - for (int i = 0; i < project.getNumConfigurations(); ++i) - { - Project::BuildConfiguration config (project.getConfiguration (i)); - configTabBox.setTabName (i + 2, config.getName().toString()); - } - } -} - -void ProjectInformationComponent::showConfigMenu() -{ - PopupMenu m; - m.addItem (1, "Add a new empty configuration"); - - PopupMenu createCopyMenu, removeMenu; - - for (int i = 0; i < project.getNumConfigurations(); ++i) - { - Project::BuildConfiguration config (project.getConfiguration (i)); - createCopyMenu.addItem (i + 10000, "Create a copy of '" + config.getName().toString() + "'"); - removeMenu.addItem (i + 20000, "Delete configuration '" + config.getName().toString() + "'"); - } - - m.addSubMenu ("Add a copy of an existing configuration", createCopyMenu); - m.addSubMenu ("Remove configuration", removeMenu); - - const int r = m.showAt (&editConfigsButton); - - if (r >= 20000) - { - project.deleteConfiguration (r - 20000); - } - else if (r >= 10000) - { - Project::BuildConfiguration configToCopy (project.getConfiguration (r - 10000)); - project.addNewConfiguration (&configToCopy); - } - else if (r == 1) - { - project.addNewConfiguration (nullptr); - } -} - -void ProjectInformationComponent::showExporterMenu() -{ - PopupMenu m; - - PopupMenu createMenu, removeMenu; - - int i; - for (i = 0; i < project.getNumExporters(); ++i) - { - ScopedPointer exp (project.createExporter (i)); - - if (exp != nullptr) - removeMenu.addItem (i + 20000, "Delete " + exp->getName()); - } - - StringArray exporters (ProjectExporter::getExporterNames()); - - for (i = 0; i < exporters.size(); ++i) - createMenu.addItem (i + 10000, "Create a new " + exporters[i] + " target"); - - m.addSubMenu ("Create new export target", createMenu); - m.addSubMenu ("Remove export target", removeMenu); - - const int r = m.showAt (&editExportersButton); - - if (r >= 20000) - project.deleteExporter (r - 20000); - else if (r >= 10000) - project.addNewExporter (r - 10000); -} - void ProjectInformationComponent::changeListenerCallback (ChangeBroadcaster*) { - updateConfigTabs(); + dynamic_cast (viewport.getViewedComponent())->update(); } //[/MiscUserCode] - - //============================================================================== //======================= Jucer Information Section ========================== //============================================================================== #if 0 -/* This section stores the Jucer's metadata - edit it at your own risk! +/* This section stores the metadata for this component - edit it at your own risk! JUCER_COMPONENT_METADATA_START - - - + - - + + connectedRight="0" connectedTop="0" connectedBottom="0" backgroundColour="FFDDDDFF"/> + - + JUCER_COMPONENT_METADATA_END */ #endif + +void ProjectInformationComponent::initialiseComponentState() +{ + + BinaryData::ImageProvider imageProvider; + ComponentBuilder::initialiseFromValueTree (*this, getComponentState(), &imageProvider); +} + +ValueTree ProjectInformationComponent::getComponentState() +{ + + const unsigned char data[] = + "COMPONENT\0\x01\x08id\0\x01\t\x05tO9EG1a\0""className\0\x01\x1d\x05ProjectInformationComponent\0width\0\x01\x05\x05""808\0height\0\x01\x05\x05""638\0""background\0\x01\x08\x05""f6f9ff\0parentClasses\0\x01)\x05public Component, public ChangeListener\0" + "constructorParams\0\x01\x13\x05Project& project_\0memberInitialisers\0\x01\x14\x05project (project_)\0\x01\x04""COMPONENTS\0\0\x01\x04VIEWPORT\0\x01\x06id\0\x01\x08\x05ykdBpb\0memberName\0\x01\n\x05viewport\0position\0\x01,\x05""8, 8, parent.width - " + "8, parent.height - 74\0scrollBarV\0\x01\x03\x05""1\0scrollBarH\0\x01\x03\x05""1\0scrollbarWidth\0\x01\x04\x05""16\0\0TEXTBUTTON\0\x01\x0fid\0\x01\x12\x05""a550a652e2666ee7\0memberName\0\x01\x13\x05openProjectButton\0""focusOrder\0\x01\x03\x05""0\0tex" + "t\0\x01\x12\x05Open Project in \0""createCallback\0\x01\x03\x05""1\0radioGroup\0\x01\x03\x05""0\0""connectedLeft\0\x01\x03\x05""0\0""connectedRight\0\x01\x03\x05""0\0""connectedTop\0\x01\x03\x05""0\0""connectedBottom\0\x01\x03\x05""0\0""backgroundCol" + "our\0\x01\n\x05""FFDDDDFF\0textColour\0\x01\x02\x05\0""backgroundColourOn\0\x01\x02\x05\0textColourOn\0\x01\x02\x05\0position\0\x01-\x05""8, parent.height - 34, left + 227, top + 24\0\0TEXTBUTTON\0\x01\x0cid\0\x01\t\x05""dRGMyYx\0name\0\x01\x02\x05\0" + "memberName\0\x01\x13\x05saveAndOpenButton\0position\0\x01-\x05""8, parent.height - 65, left + 227, top + 24\0text\0\x01\x12\x05Save And Open in\0""createCallback\0\x01\x03\x05""1\0radioGroup\0\x01\x03\x05""0\0""connectedLeft\0\x01\x03\x05""0\0""conne" + "ctedRight\0\x01\x03\x05""0\0""connectedTop\0\x01\x03\x05""0\0""connectedBottom\0\x01\x03\x05""0\0""backgroundColour\0\x01\n\x05""FFDDDDFF\0\0GENERICCOMPONENT\0\x01\x06id\0\x01\x08\x05QqLJBF\0memberName\0\x01\n\x05rollover\0position\0\x01>\x05""246, p" + "arent.height - 68, parent.width - 8, parent.height - 4\0""class\0\x01\x12\x05RolloverHelpComp\0""canBeAggregated\0\x01\x03\x05""1\0""constructorParams\0\x01\x02\x05\0\0MARKERS_X\0\0\0MARKERS_Y\0\0\0METHODS\0\x01\x01paint\0\x01\x03\x05""1\0\0"; + + return ValueTree::readFromData (data, sizeof (data)); +} diff --git a/extras/Introjucer/Source/Project/jucer_ProjectInformationComponent.h b/extras/Introjucer/Source/Project/jucer_ProjectInformationComponent.h index 93350a6cf9..e313b4407f 100644 --- a/extras/Introjucer/Source/Project/jucer_ProjectInformationComponent.h +++ b/extras/Introjucer/Source/Project/jucer_ProjectInformationComponent.h @@ -1,26 +1,26 @@ /* ============================================================================== - This is an automatically generated file created by the Jucer! + This is an automatically generated file! Be careful when adding custom code to these files, as only the code within the "//[xyz]" and "//[/xyz]" sections will be retained when the file is loaded and re-saved. - Created for JUCE version: JUCE v1.53.8 + Created for JUCE version: JUCE v2.0.16 ------------------------------------------------------------------------------ - JUCE and the Jucer are copyright 2004-10 by Raw Material Software ltd. + JUCE is copyright 2004-11 by Raw Material Software ltd. ============================================================================== */ -#ifndef __JUCER_PROJECTINFORMATIONCOMPONENT_H_2F89B0AC__ -#define __JUCER_PROJECTINFORMATIONCOMPONENT_H_2F89B0AC__ +#ifndef __JUCER_PROJECTINFORMATIONCOMPONENT_H_30FFCD07__ +#define __JUCER_PROJECTINFORMATIONCOMPONENT_H_30FFCD07__ //[Headers] -- You can add your own extra header files here -- -#include "jucer_ProjectExporter.h" +#include "jucer_Project.h" //[/Headers] @@ -41,37 +41,30 @@ public: ~ProjectInformationComponent(); //============================================================================== - //[UserMethods] -- You can add your own custom methods in this section. + //[UserMethods] void changeListenerCallback (ChangeBroadcaster*); - void rebuildConfigTabs(); //[/UserMethods] - void resized(); void buttonClicked (Button* buttonThatWasClicked); void paint (Graphics& g); - private: //============================================================================== - //[UserVariables] -- You can add your own custom variables in this section. + //[UserVariables] Project& project; - - var lastProjectType; - void updateConfigTabs(); - void showConfigMenu(); - void showExporterMenu(); //[/UserVariables] //============================================================================== - TabbedComponent configTabBox; - TextButton editConfigsButton; + Viewport viewport; TextButton openProjectButton; - TextButton editExportersButton; TextButton saveAndOpenButton; + RolloverHelpComp rollover; + + void initialiseComponentState(); + static ValueTree getComponentState(); //============================================================================== - JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (ProjectInformationComponent); + JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (ProjectInformationComponent) }; - -#endif // __JUCER_PROJECTINFORMATIONCOMPONENT_H_2F89B0AC__ +#endif // __JUCER_PROJECTINFORMATIONCOMPONENT_H_30FFCD07__ diff --git a/extras/Introjucer/Source/Project/jucer_ProjectSaver.h b/extras/Introjucer/Source/Project/jucer_ProjectSaver.h deleted file mode 100644 index 4742527e3d..0000000000 --- a/extras/Introjucer/Source/Project/jucer_ProjectSaver.h +++ /dev/null @@ -1,363 +0,0 @@ -/* - ============================================================================== - - This file is part of the JUCE library - "Jules' Utility Class Extensions" - Copyright 2004-10 by Raw Material Software Ltd. - - ------------------------------------------------------------------------------ - - JUCE can be redistributed and/or modified under the terms of the GNU General - Public License (Version 2), as published by the Free Software Foundation. - A copy of the license is included in the JUCE distribution, or can be found - online at www.gnu.org/licenses. - - JUCE is distributed in the hope that it will be useful, but WITHOUT ANY - WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR - A PARTICULAR PURPOSE. See the GNU General Public License for more details. - - ------------------------------------------------------------------------------ - - To release a closed-source product which uses JUCE, commercial licenses are - available: visit www.rawmaterialsoftware.com/juce for more information. - - ============================================================================== -*/ - -#ifndef __JUCER_PROJECTSAVER_JUCEHEADER__ -#define __JUCER_PROJECTSAVER_JUCEHEADER__ - -#include "jucer_ResourceFile.h" - - -//============================================================================== -class ProjectSaver -{ -public: - ProjectSaver (Project& project_, const File& projectFile_) - : project (project_), projectFile (projectFile_), - generatedFilesGroup (Project::Item::createGroup (project, project.getJuceCodeGroupName())) - { - generatedFilesGroup.setID (getGeneratedGroupID()); - } - - Project& getProject() noexcept { return project; } - - String save() - { - jassert (generatedFilesGroup.getNumChildren() == 0); // this method can't be called more than once! - - const File oldFile (project.getFile()); - project.setFile (projectFile); - - writeMainProjectFile(); - - if (errors.size() == 0) - writeAppConfigFile(); - - if (errors.size() == 0) - writeBinaryDataFiles(); - - if (errors.size() == 0) - writeAppHeader(); - - if (errors.size() == 0) - writeProjects(); - - if (errors.size() > 0) - project.setFile (oldFile); - - return errors[0]; - } - - bool saveGeneratedFile (const String& filePath, const MemoryOutputStream& newData) - { - if (! project.getGeneratedCodeFolder().createDirectory()) - { - errors.add ("Couldn't create folder: " + project.getGeneratedCodeFolder().getFullPathName()); - return false; - } - - const File file (project.getGeneratedCodeFolder().getChildFile (filePath)); - - if (replaceFileIfDifferent (file, newData)) - { - if (! generatedFilesGroup.findItemForFile (file).isValid()) - generatedFilesGroup.addFile (file, -1); - - return true; - } - - return false; - } - - static void writeAutoGenWarningComment (OutputStream& out) - { - out << "/*" << newLine << newLine - << " IMPORTANT! This file is auto-generated each time you save your" << newLine - << " project - if you alter its contents, your changes may be overwritten!" << newLine - << newLine; - } - - static const char* getGeneratedGroupID() noexcept { return "__jucelibfiles"; } - -private: - Project& project; - const File projectFile; - Project::Item generatedFilesGroup; - StringArray errors; - - File appConfigFile, binaryDataCpp; - - void writeMainProjectFile() - { - ScopedPointer xml (project.getProjectRoot().createXml()); - jassert (xml != nullptr); - - if (xml != nullptr) - { - #if JUCE_DEBUG - { - MemoryOutputStream mo; - project.getProjectRoot().writeToStream (mo); - - MemoryInputStream mi (mo.getData(), mo.getDataSize(), false); - ValueTree v = ValueTree::readFromStream (mi); - ScopedPointer xml2 (v.createXml()); - - // This bit just tests that ValueTree save/load works reliably.. Let me know if this asserts for you! - jassert (xml->isEquivalentTo (xml2, true)); - } - #endif - - MemoryOutputStream mo; - xml->writeToStream (mo, String::empty); - replaceFileIfDifferent (projectFile, mo); - } - } - - bool writeAppConfig (OutputStream& out) - { - writeAutoGenWarningComment (out); - out << " If you want to change any of these values, use the Introjucer to do so, rather than" << newLine - << " editing this file directly!" << newLine - << newLine - << " Any commented-out settings will fall back to using the default values that" << newLine - << " they are given in juce_Config.h" << newLine - << newLine - << "*/" << newLine << newLine; - - bool notActive = project.getJuceLinkageMode() == Project::useLinkedJuce - || project.getJuceLinkageMode() == Project::notLinkedToJuce; - if (notActive) - out << "/* NOTE: These configs aren't available when you're linking to the juce library statically!" << newLine - << " If you need to set a configuration that differs from the default, you'll need" << newLine - << " to include the amalgamated Juce files." << newLine << newLine; - - OwnedArray flags; - project.getAllConfigFlags (flags); - - for (int i = 0; i < flags.size(); ++i) - { - const Project::ConfigFlag* const f = flags[i]; - const String value (f->value.toString()); - - if (value != Project::configFlagEnabled && value != Project::configFlagDisabled) - out << "//#define "; - else - out << "#define "; - - out << f->symbol; - - if (value == Project::configFlagEnabled) - out << " 1"; - else if (value == Project::configFlagDisabled) - out << " 0"; - - out << newLine; - } - - if (notActive) - out << newLine << "*/" << newLine; - - return flags.size() > 0; - } - - void writeAppConfigFile() - { - appConfigFile = project.getGeneratedCodeFolder().getChildFile (project.getAppConfigFilename()); - - MemoryOutputStream mem; - if (writeAppConfig (mem)) - saveGeneratedFile (project.getAppConfigFilename(), mem); - else - appConfigFile.deleteFile(); - } - - void writeAppHeader (OutputStream& out) - { - writeAutoGenWarningComment (out); - - out << " This is the header file that your files should include in order to get all the" << newLine - << " Juce library headers. You should NOT include juce.h or juce_amalgamated.h directly in" << newLine - << " your own source files, because that wouldn't pick up the correct Juce configuration" << newLine - << " options for your app." << newLine - << newLine - << "*/" << newLine << newLine; - - String headerGuard ("__APPHEADERFILE_" + project.getProjectUID().toUpperCase() + "__"); - out << "#ifndef " << headerGuard << newLine - << "#define " << headerGuard << newLine << newLine; - - if (appConfigFile.exists()) - out << CodeHelpers::createIncludeStatement (project.getAppConfigFilename()) << newLine; - - { - OwnedArray modules; - project.getProjectType().createRequiredModules (project, modules); - - StringArray paths, guards; - - for (int i = 0; i < modules.size(); ++i) - modules.getUnchecked(i)->getHeaderFiles (project, paths, guards); - - StringArray uniquePaths (paths); - uniquePaths.removeDuplicates (false); - - if (uniquePaths.size() == 1) - { - out << "#include " << paths[0] << newLine; - } - else - { - int i = paths.size(); - for (; --i >= 0;) - { - for (int j = i; --j >= 0;) - { - if (paths[i] == paths[j] && guards[i] == guards[j]) - { - paths.remove (i); - guards.remove (i); - } - } - } - - for (i = 0; i < paths.size(); ++i) - { - out << (i == 0 ? "#if " : "#elif ") << guards[i] << newLine - << " #include " << paths[i] << newLine; - } - - out << "#endif" << newLine; - } - } - - if (binaryDataCpp.exists()) - out << CodeHelpers::createIncludeStatement (binaryDataCpp.withFileExtension (".h"), appConfigFile) << newLine; - - out << newLine - << "namespace ProjectInfo" << newLine - << "{" << newLine - << " const char* const projectName = " << CodeHelpers::addEscapeChars (project.getProjectName().toString()).quoted() << ";" << newLine - << " const char* const versionString = " << CodeHelpers::addEscapeChars (project.getVersion().toString()).quoted() << ";" << newLine - << " const int versionNumber = " << project.getVersionAsHex() << ";" << newLine - << "}" << newLine - << newLine - << "#endif // " << headerGuard << newLine; - } - - void writeAppHeader() - { - if (project.getJuceLinkageMode() != Project::notLinkedToJuce - || ! project.getProjectType().isLibrary()) - { - MemoryOutputStream mem; - writeAppHeader (mem); - saveGeneratedFile (project.getJuceSourceHFilename(), mem); - } - else - { - project.getAppIncludeFile().deleteFile(); - } - } - - void writeBinaryDataFiles() - { - binaryDataCpp = project.getGeneratedCodeFolder().getChildFile ("BinaryData.cpp"); - - ResourceFile resourceFile (project); - - if (resourceFile.getNumFiles() > 0) - { - resourceFile.setClassName ("BinaryData"); - - if (resourceFile.write (binaryDataCpp)) - { - generatedFilesGroup.addFile (binaryDataCpp, -1); - generatedFilesGroup.addFile (binaryDataCpp.withFileExtension (".h"), -1); - } - else - { - errors.add ("Can't create binary resources file: " + binaryDataCpp.getFullPathName()); - } - } - else - { - binaryDataCpp.deleteFile(); - binaryDataCpp.withFileExtension ("h").deleteFile(); - } - } - - void writeProjects() - { - for (int i = project.getNumExporters(); --i >= 0;) - { - ScopedPointer exporter (project.createExporter (i)); - std::cout << "Writing files for: " << exporter->getName() << std::endl; - - if (exporter->getTargetFolder().createDirectory()) - { - project.getProjectType().prepareExporter (*exporter); - - // start with a copy of the basic files, as each exporter may modify it. - const ValueTree generatedGroupCopy (generatedFilesGroup.getNode().createCopy()); - - for (int j = 0; j < exporter->libraryModules.size(); ++j) - exporter->libraryModules.getUnchecked(j)->prepareExporter (*exporter, *this); - - exporter->groups.add (generatedFilesGroup); - - try - { - exporter->create(); - } - catch (ProjectExporter::SaveError& error) - { - errors.add (error.message); - } - - generatedFilesGroup.getNode() = generatedGroupCopy; - } - else - { - errors.add ("Can't create folder: " + exporter->getTargetFolder().getFullPathName()); - } - } - } - - bool replaceFileIfDifferent (const File& f, const MemoryOutputStream& newData) - { - if (! FileHelpers::overwriteFileWithNewDataIfDifferent (f, newData)) - { - errors.add ("Can't write to file: " + f.getFullPathName()); - return false; - } - - return true; - } - - JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (ProjectSaver); -}; - - -#endif diff --git a/extras/Introjucer/Source/Project/jucer_ProjectTreeViewBase.cpp b/extras/Introjucer/Source/Project/jucer_ProjectTreeViewBase.cpp index 37ea93124b..9392781df2 100644 --- a/extras/Introjucer/Source/Project/jucer_ProjectTreeViewBase.cpp +++ b/extras/Introjucer/Source/Project/jucer_ProjectTreeViewBase.cpp @@ -2,7 +2,7 @@ ============================================================================== This file is part of the JUCE library - "Jules' Utility Class Extensions" - Copyright 2004-10 by Raw Material Software Ltd. + Copyright 2004-11 by Raw Material Software Ltd. ------------------------------------------------------------------------------ @@ -31,12 +31,12 @@ ProjectTreeViewBase::ProjectTreeViewBase (const Project::Item& item_) : item (item_), isFileMissing (false) { - item.getNode().addListener (this); + item.state.addListener (this); } ProjectTreeViewBase::~ProjectTreeViewBase() { - item.getNode().removeListener (this); + item.state.removeListener (this); } //============================================================================== @@ -48,7 +48,7 @@ String ProjectTreeViewBase::getDisplayName() const void ProjectTreeViewBase::setName (const String& newName) { if (item.isMainGroup()) - item.getProject().setTitle (newName); + item.project.setTitle (newName); else item.getName() = newName; } @@ -268,7 +268,7 @@ void ProjectTreeViewBase::moveItems (OwnedArray & selectedNodes, { Project::Item* const n = selectedNodes.getUnchecked(i); - if (destNode == *n || destNode.getNode().isAChildOf (n->getNode())) // Check for recursion. + if (destNode == *n || destNode.state.isAChildOf (n->state)) // Check for recursion. return; if (! destNode.canContain (*n)) @@ -282,7 +282,7 @@ void ProjectTreeViewBase::moveItems (OwnedArray & selectedNodes, for (int j = selectedNodes.size(); --j >= 0;) { - if (j != i && n->getNode().isAChildOf (selectedNodes.getUnchecked(j)->getNode())) + if (j != i && n->state.isAChildOf (selectedNodes.getUnchecked(j)->state)) { selectedNodes.remove (i); break; @@ -295,8 +295,8 @@ void ProjectTreeViewBase::moveItems (OwnedArray & selectedNodes, { Project::Item* selectedNode = selectedNodes.getUnchecked(i); - if (selectedNode->getNode().getParent() == destNode.getNode() - && indexOfNode (destNode.getNode(), selectedNode->getNode()) < insertIndex) + if (selectedNode->state.getParent() == destNode.state + && indexOfNode (destNode.state, selectedNode->state) < insertIndex) --insertIndex; selectedNode->removeItemFromProject(); @@ -367,7 +367,7 @@ void ProjectTreeViewBase::itemDropped (const DragAndDropTarget::SourceDetails& d //============================================================================== void ProjectTreeViewBase::treeChildrenChanged (const ValueTree& parentTree) { - if (parentTree == item.getNode()) + if (parentTree == item.state) { refreshSubItems(); treeHasChanged(); @@ -377,7 +377,7 @@ void ProjectTreeViewBase::treeChildrenChanged (const ValueTree& parentTree) void ProjectTreeViewBase::valueTreePropertyChanged (ValueTree& tree, const Identifier& property) { - if (tree == item.getNode()) + if (tree == item.state) repaintItem(); } @@ -406,7 +406,7 @@ bool ProjectTreeViewBase::mightContainSubItems() return item.getNumChildren() > 0; } -const String ProjectTreeViewBase::getUniqueName() const +String ProjectTreeViewBase::getUniqueName() const { jassert (item.getID().isNotEmpty()); return item.getID(); @@ -431,21 +431,42 @@ void ProjectTreeViewBase::addSubItems() void ProjectTreeViewBase::refreshSubItems() { - OpennessRestorer openness (*this); + WholeTreeOpennessRestorer openness (*this); clearSubItems(); addSubItems(); } +static void treeViewMultiSelectItemChosen (int resultCode, ProjectTreeViewBase* item) +{ + switch (resultCode) + { + case 1: item->deleteAllSelectedItems(); break; + default: break; + } +} + void ProjectTreeViewBase::showMultiSelectionPopupMenu() { PopupMenu m; - m.addItem (6, "Delete"); + m.addItem (1, "Delete"); - switch (m.show()) - { - case 6: deleteAllSelectedItems(); break; - default: break; - } + m.showMenuAsync (PopupMenu::Options(), + ModalCallbackFunction::create (treeViewMultiSelectItemChosen, this)); +} + +static void treeViewMenuItemChosen (int resultCode, ProjectTreeViewBase* item) +{ + item->handlePopupMenuResult (resultCode); +} + +void ProjectTreeViewBase::launchPopupMenu (PopupMenu& m) +{ + m.showMenuAsync (PopupMenu::Options(), + ModalCallbackFunction::create (treeViewMenuItemChosen, this)); +} + +void ProjectTreeViewBase::handlePopupMenuResult (int) +{ } void ProjectTreeViewBase::itemDoubleClicked (const MouseEvent& e) @@ -487,12 +508,12 @@ void ProjectTreeViewBase::itemSelectionChanged (bool isNowSelected) } } -const String ProjectTreeViewBase::getTooltip() +String ProjectTreeViewBase::getTooltip() { return String::empty; } -const var ProjectTreeViewBase::getDragSourceDescription() +var ProjectTreeViewBase::getDragSourceDescription() { delayedSelectionTimer = nullptr; return projectItemDragType; diff --git a/extras/Introjucer/Source/Project/jucer_ProjectTreeViewBase.h b/extras/Introjucer/Source/Project/jucer_ProjectTreeViewBase.h index 2ede87df58..538d299b75 100644 --- a/extras/Introjucer/Source/Project/jucer_ProjectTreeViewBase.h +++ b/extras/Introjucer/Source/Project/jucer_ProjectTreeViewBase.h @@ -2,7 +2,7 @@ ============================================================================== This file is part of the JUCE library - "Jules' Utility Class Extensions" - Copyright 2004-10 by Raw Material Software Ltd. + Copyright 2004-11 by Raw Material Software Ltd. ------------------------------------------------------------------------------ @@ -29,7 +29,7 @@ #include "../jucer_Headers.h" #include "../Utility/jucer_JucerTreeViewBase.h" #include "jucer_Project.h" -#include "jucer_ResourceFile.h" +#include "../Project Saving/jucer_ResourceFile.h" #include "jucer_ProjectContentComponent.h" @@ -65,6 +65,9 @@ public: virtual void addFiles (const StringArray& files, int insertIndex); virtual void moveSelectedItemsTo (OwnedArray & selectedNodes, int insertIndex); virtual void showMultiSelectionPopupMenu(); + + void launchPopupMenu (PopupMenu&); // runs asynchronously, and produces a callback to handlePopupMenuResult(). + virtual void handlePopupMenuResult (int resultCode); void invokeShowDocument(); virtual ProjectTreeViewBase* findTreeViewItem (const Project::Item& itemToFind); @@ -79,14 +82,14 @@ public: //============================================================================== // TreeViewItem stuff.. bool mightContainSubItems(); - const String getUniqueName() const; + String getUniqueName() const; void itemOpennessChanged (bool isNowOpen); void refreshSubItems(); bool canBeSelected() const { return true; } void itemDoubleClicked (const MouseEvent& e); void itemSelectionChanged (bool isNowSelected); - const String getTooltip(); - const var getDragSourceDescription(); + String getTooltip(); + var getDragSourceDescription(); //============================================================================== // Drag-and-drop stuff.. diff --git a/extras/Introjucer/Source/Project/jucer_ProjectType.cpp b/extras/Introjucer/Source/Project/jucer_ProjectType.cpp index f7ff89b22e..cf5a4cfb37 100644 --- a/extras/Introjucer/Source/Project/jucer_ProjectType.cpp +++ b/extras/Introjucer/Source/Project/jucer_ProjectType.cpp @@ -2,7 +2,7 @@ ============================================================================== This file is part of the JUCE library - "Jules' Utility Class Extensions" - Copyright 2004-10 by Raw Material Software Ltd. + Copyright 2004-11 by Raw Material Software Ltd. ------------------------------------------------------------------------------ @@ -24,834 +24,11 @@ */ #include "jucer_ProjectType.h" -#include "jucer_ProjectExporter.h" -#include "jucer_ProjectSaver.h" +#include "../Project Saving/jucer_ProjectExporter.h" +#include "../Project Saving/jucer_ProjectSaver.h" +#include "jucer_AudioPluginModule.h" -//============================================================================== -class JuceModule -{ -public: - JuceModule (const File& file) - : moduleInfo (JSON::parse (file)), - moduleFolder (file.getParentDirectory()) - { - } - static StringArray findAllModuleIDs() - { - StringArray ids; - DirectoryIterator iter (getModulesFolder(), false, "*", File::findDirectories); - - while (iter.next()) - { - const File moduleDef (iter.getFile().getChildFile ("juce_module.txt")); - - if (moduleDef.exists()) - { - ScopedPointer m (new JuceModule (moduleDef)); - jassert (m->isValid()); - - if (m->isValid()) - ids.add (m->getID()); - } - } - - return ids; - } - - static JuceModule* createModuleForID (const String& moduleID) - { - DirectoryIterator iter (getModulesFolder(), false, "*", File::findDirectories); - - while (iter.next()) - { - const File moduleDef (iter.getFile().getChildFile ("juce_module.txt")); - - if (moduleDef.exists()) - { - ScopedPointer m (new JuceModule (moduleDef)); - - if (m->getID() == moduleID) - return m.release(); - } - } - - return nullptr; - } - - String getID() const { return moduleInfo ["id"]; } - - bool isValid() const { return getID().isNotEmpty(); } - - File getInclude() const - { - return getFileFromPath (moduleInfo ["include"]); - } - - Array getCompiledFiles() const - { - Array result; - const Array* const files = moduleInfo ["compile"].getArray(); - - if (files != nullptr) - { - for (int i = 0; i < files->size(); ++i) - { - const var& file = files->getReference(i); - - String filename (file ["file"].toString()); - - if (filename.isNotEmpty()) - result.add (getFileFromPath (filename)); - } - } - - return result; - } - - File getFileFromPath (const String& path) const - { - return moduleFolder.getChildFile (path); - } - - void getDependencies (OwnedArray& dependencies) const - { - const Array* const deps = moduleInfo ["dependencies"].getArray(); - - if (deps != nullptr) - { - for (int i = 0; i < deps->size(); ++i) - { - const String requiredID (deps->getUnchecked(i) ["id"].toString()); - - if (requiredID.isNotEmpty() - && ! containsModule (dependencies, requiredID)) - { - JuceModule* const m = createModuleForID (requiredID); - - if (m != nullptr) - dependencies.add (m); - } - } - } - } - - var moduleInfo; - File moduleFolder; - -private: - static bool containsModule (const OwnedArray& modules, const String& requiredID) - { - for (int i = modules.size(); --i >= 0;) - if (modules.getUnchecked(i)->getID() == requiredID) - return true; - - return false; - } - - static File getModulesFolder() - { - return File ("/Volumes/CODE/code/juce2/modules"); - //return StoredSettings::getInstance()->getLastKnownJuceFolder().getChildFile ("modules"); - } - - JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (JuceModule); -}; - - -//============================================================================== -LibraryModule::LibraryModule() -{ -} - -//============================================================================== -namespace -{ - Value getVSTFolder (const ProjectExporter& exporter) { return exporter.getSetting (Ids::vstFolder); } - - void addVSTFolderToPath (const ProjectExporter& exporter, StringArray& searchPaths) - { - const String vstFolder (getVSTFolder (exporter).toString()); - - if (vstFolder.isNotEmpty()) - { - RelativePath path (exporter.rebaseFromProjectFolderToBuildTarget (RelativePath (vstFolder, RelativePath::projectFolder))); - - if (exporter.isVisualStudio()) - searchPaths.add (path.toWindowsStyle()); - else if (exporter.isLinux() || exporter.isXcode()) - searchPaths.insert (0, path.toUnixStyle()); - } - } - - void createVSTPathEditor (const ProjectExporter& exporter, Array & props) - { - props.add (new TextPropertyComponent (getVSTFolder (exporter), "VST Folder", 1024, false)); - props.getLast()->setTooltip ("If you're building a VST, this must be the folder containing the VST SDK. This should be an absolute path."); - } - - static int countMaxPluginChannels (const String& configString, bool isInput) - { - StringArray configs; - configs.addTokens (configString, ", {}", String::empty); - configs.trim(); - configs.removeEmptyStrings(); - jassert ((configs.size() & 1) == 0); // looks like a syntax error in the configs? - - int maxVal = 0; - for (int i = (isInput ? 0 : 1); i < configs.size(); i += 2) - maxVal = jmax (maxVal, configs[i].getIntValue()); - - return maxVal; - } - - Value shouldBuildVST (const Project& project) { return project.getProjectValue ("buildVST"); } - Value shouldBuildRTAS (const Project& project) { return project.getProjectValue ("buildRTAS"); } - Value shouldBuildAU (const Project& project) { return project.getProjectValue ("buildAU"); } - - Value getPluginName (const Project& project) { return project.getProjectValue ("pluginName"); } - Value getPluginDesc (const Project& project) { return project.getProjectValue ("pluginDesc"); } - Value getPluginManufacturer (const Project& project) { return project.getProjectValue ("pluginManufacturer"); } - Value getPluginManufacturerCode (const Project& project) { return project.getProjectValue ("pluginManufacturerCode"); } - Value getPluginCode (const Project& project) { return project.getProjectValue ("pluginCode"); } - Value getPluginChannelConfigs (const Project& project) { return project.getProjectValue ("pluginChannelConfigs"); } - Value getPluginIsSynth (const Project& project) { return project.getProjectValue ("pluginIsSynth"); } - Value getPluginWantsMidiInput (const Project& project) { return project.getProjectValue ("pluginWantsMidiIn"); } - Value getPluginProducesMidiOut (const Project& project) { return project.getProjectValue ("pluginProducesMidiOut"); } - Value getPluginSilenceInProducesSilenceOut (const Project& project) { return project.getProjectValue ("pluginSilenceInIsSilenceOut"); } - Value getPluginTailLengthSeconds (const Project& project) { return project.getProjectValue ("pluginTailLength"); } - Value getPluginEditorNeedsKeyFocus (const Project& project) { return project.getProjectValue ("pluginEditorRequiresKeys"); } - Value getPluginAUExportPrefix (const Project& project) { return project.getProjectValue ("pluginAUExportPrefix"); } - Value getPluginAUCocoaViewClassName (const Project& project) { return project.getProjectValue ("pluginAUViewClass"); } - Value getPluginRTASCategory (const Project& project) { return project.getProjectValue ("pluginRTASCategory"); } - - void writePluginCharacteristics (Project& project, OutputStream& out) - { - String headerGuard ("__PLUGINCHARACTERISTICS_" + project.getProjectUID().toUpperCase() + "__"); - - ProjectSaver::writeAutoGenWarningComment (out); - - out << " This header file contains configuration options for the plug-in. If you need to change any of" << newLine - << " these, it'd be wise to do so using the Jucer, rather than editing this file directly..." << newLine - << newLine - << "*/" << newLine - << newLine - << "#ifndef " << headerGuard << newLine - << "#define " << headerGuard << newLine - << newLine - << "#define JucePlugin_Build_VST " << ((bool) shouldBuildVST (project).getValue() ? 1 : 0) << " // (If you change this value, you'll also need to re-export the projects using the Jucer)" << newLine - << "#define JucePlugin_Build_AU " << ((bool) shouldBuildAU (project).getValue() ? 1 : 0) << " // (If you change this value, you'll also need to re-export the projects using the Jucer)" << newLine - << "#define JucePlugin_Build_RTAS " << ((bool) shouldBuildRTAS (project).getValue() ? 1 : 0) << " // (If you change this value, you'll also need to re-export the projects using the Jucer)" << newLine - << newLine - << "#define JucePlugin_Name " << getPluginName (project).toString().quoted() << newLine - << "#define JucePlugin_Desc " << getPluginDesc (project).toString().quoted() << newLine - << "#define JucePlugin_Manufacturer " << getPluginManufacturer (project).toString().quoted() << newLine - << "#define JucePlugin_ManufacturerCode '" << getPluginManufacturerCode (project).toString().trim().substring (0, 4) << "'" << newLine - << "#define JucePlugin_PluginCode '" << getPluginCode (project).toString().trim().substring (0, 4) << "'" << newLine - << "#define JucePlugin_MaxNumInputChannels " << countMaxPluginChannels (getPluginChannelConfigs (project).toString(), true) << newLine - << "#define JucePlugin_MaxNumOutputChannels " << countMaxPluginChannels (getPluginChannelConfigs (project).toString(), false) << newLine - << "#define JucePlugin_PreferredChannelConfigurations " << getPluginChannelConfigs (project).toString() << newLine - << "#define JucePlugin_IsSynth " << ((bool) getPluginIsSynth (project).getValue() ? 1 : 0) << newLine - << "#define JucePlugin_WantsMidiInput " << ((bool) getPluginWantsMidiInput (project).getValue() ? 1 : 0) << newLine - << "#define JucePlugin_ProducesMidiOutput " << ((bool) getPluginProducesMidiOut (project).getValue() ? 1 : 0) << newLine - << "#define JucePlugin_SilenceInProducesSilenceOut " << ((bool) getPluginSilenceInProducesSilenceOut (project).getValue() ? 1 : 0) << newLine - << "#define JucePlugin_TailLengthSeconds " << (double) getPluginTailLengthSeconds (project).getValue() << newLine - << "#define JucePlugin_EditorRequiresKeyboardFocus " << ((bool) getPluginEditorNeedsKeyFocus (project).getValue() ? 1 : 0) << newLine - << "#define JucePlugin_VersionCode " << project.getVersionAsHex() << newLine - << "#define JucePlugin_VersionString " << project.getVersion().toString().quoted() << newLine - << "#define JucePlugin_VSTUniqueID JucePlugin_PluginCode" << newLine - << "#define JucePlugin_VSTCategory " << ((bool) getPluginIsSynth (project).getValue() ? "kPlugCategSynth" : "kPlugCategEffect") << newLine - << "#define JucePlugin_AUMainType " << ((bool) getPluginIsSynth (project).getValue() ? "kAudioUnitType_MusicDevice" : "kAudioUnitType_Effect") << newLine - << "#define JucePlugin_AUSubType JucePlugin_PluginCode" << newLine - << "#define JucePlugin_AUExportPrefix " << getPluginAUExportPrefix (project).toString() << newLine - << "#define JucePlugin_AUExportPrefixQuoted " << getPluginAUExportPrefix (project).toString().quoted() << newLine - << "#define JucePlugin_AUManufacturerCode JucePlugin_ManufacturerCode" << newLine - << "#define JucePlugin_CFBundleIdentifier " << project.getBundleIdentifier().toString() << newLine - << "#define JucePlugin_AUCocoaViewClassName " << getPluginAUCocoaViewClassName (project).toString() << newLine - << "#define JucePlugin_RTASCategory " << ((bool) getPluginIsSynth (project).getValue() ? "ePlugInCategory_SWGenerators" : "ePlugInCategory_None") << newLine - << "#define JucePlugin_RTASManufacturerCode JucePlugin_ManufacturerCode" << newLine - << "#define JucePlugin_RTASProductId JucePlugin_PluginCode" << newLine; - - out << "#define JUCE_USE_VSTSDK_2_4 1" << newLine - << newLine - << "#endif // " << headerGuard << newLine; - } - - void writePluginCharacteristicsFile (ProjectSaver& projectSaver) - { - MemoryOutputStream mem; - writePluginCharacteristics (projectSaver.getProject(), mem); - projectSaver.saveGeneratedFile (projectSaver.getProject().getPluginCharacteristicsFilename(), mem); - } -} - - -//============================================================================== -class JuceLibraryModule : public LibraryModule -{ -public: - JuceLibraryModule() {} - - void getHeaderFiles (Project& project, StringArray& includePaths, StringArray& headerGuards) - { - if (project.getJuceLinkageMode() != Project::notLinkedToJuce) - { - if (project.isUsingSingleTemplateFile() - || project.isUsingMultipleTemplateFiles() - || project.isUsingFullyAmalgamatedFile()) - createMultipleIncludes (project, "juce_amalgamated.h", includePaths, headerGuards); - else - createMultipleIncludes (project, "juce.h", includePaths, headerGuards); - } - } - - void prepareExporter (ProjectExporter& exporter, ProjectSaver& projectSaver) const - { - const Project& project = exporter.getProject(); - - const String linkageMode (project.getJuceLinkageMode()); - int numJuceSourceFiles = 0; - - if (linkageMode == Project::useAmalgamatedJuce - || linkageMode == Project::useAmalgamatedJuceViaSingleTemplate) - { - numJuceSourceFiles = 1; - } - else if (linkageMode == Project::useAmalgamatedJuceViaMultipleTemplates) - { - numJuceSourceFiles = project.getNumSeparateAmalgamatedFiles(); - } - else - { - jassert (linkageMode == Project::notLinkedToJuce - || linkageMode == Project::useLinkedJuce); - } - - for (int i = 0; i <= project.getNumSeparateAmalgamatedFiles(); ++i) - { - String sourceWrapper (project.getJuceSourceFilenameRoot()); - - if (i != 0) - sourceWrapper << i; - - sourceWrapper << (exporter.usesMMFiles() ? ".mm" : ".cpp"); - - if (numJuceSourceFiles > 0 - && ((i == 0 && numJuceSourceFiles == 1) || (i != 0 && numJuceSourceFiles > 1))) - { - MemoryOutputStream mem; - writeSourceWrapper (mem, const_cast (project), i); - projectSaver.saveGeneratedFile (sourceWrapper, mem); - } - else - { - project.getGeneratedCodeFolder().getChildFile (sourceWrapper).deleteFile(); - } - } - - if (project.isConfigFlagEnabled ("JUCE_PLUGINHOST_AU")) - exporter.xcodeFrameworks.addTokens ("AudioUnit CoreAudioKit", false); - } - - void addExtraSearchPaths (const ProjectExporter& exporter, StringArray& paths) const - { - if (exporter.getProject().isConfigFlagEnabled ("JUCE_PLUGINHOST_VST")) - addVSTFolderToPath (exporter, paths); - } - - void createPropertyEditors (const ProjectExporter& exporter, Array & props) const - { - if (exporter.getProject().isConfigFlagEnabled ("JUCE_PLUGINHOST_VST")) - createVSTPathEditor (exporter, props); - } - - void getConfigFlags (Project& project, OwnedArray& flags) const - { - if (project.getJuceLinkageMode() == Project::notLinkedToJuce) - return; - - StringArray lines; - project.getLocalJuceFolder().getChildFile ("juce_Config.h").readLines (lines); - - for (int i = 0; i < lines.size(); ++i) - { - String line (lines[i].trim()); - - if (line.startsWith ("/** ") && line.containsChar (':')) - { - ScopedPointer config (new Project::ConfigFlag()); - config->symbol = line.substring (4).upToFirstOccurrenceOf (":", false, false).trim(); - - if (config->symbol.length() > 4) - { - config->description = line.fromFirstOccurrenceOf (":", false, false).trimStart(); - ++i; - while (! (lines[i].contains ("*/") || lines[i].contains ("@see"))) - { - if (lines[i].trim().isNotEmpty()) - config->description = config->description.trim() + " " + lines[i].trim(); - - ++i; - } - - config->description = config->description.upToFirstOccurrenceOf ("*/", false, false); - flags.add (config.release()); - } - } - } - } - -private: - static void writeSourceWrapper (OutputStream& out, Project& project, int fileNumber) - { - const String appConfigFileName (project.getAppConfigFilename()); - - ProjectSaver::writeAutoGenWarningComment (out); - - out << " This file pulls in all the Juce source code, and builds it using the settings" << newLine - << " defined in " << appConfigFileName << "." << newLine - << newLine - << " If you want to change the method by which Juce is linked into your app, use the" << newLine - << " Jucer to change it, rather than trying to edit this file directly." << newLine - << newLine - << "*/" - << newLine - << newLine - << CodeHelpers::createIncludeStatement (appConfigFileName) << newLine; - - if (fileNumber == 0) - writeInclude (project, out, project.isUsingFullyAmalgamatedFile() ? "juce_amalgamated.cpp" - : "amalgamation/juce_amalgamated_template.cpp"); - else - writeInclude (project, out, "amalgamation/juce_amalgamated" + String (fileNumber) + ".cpp"); - } - - static void createMultipleIncludes (Project& project, const String& pathFromLibraryFolder, - StringArray& paths, StringArray& guards) - { - for (int i = project.getNumExporters(); --i >= 0;) - { - ScopedPointer exporter (project.createExporter (i)); - - if (exporter != nullptr) - { - paths.add (exporter->getIncludePathForFileInJuceFolder (pathFromLibraryFolder, project.getAppIncludeFile())); - guards.add ("defined (" + exporter->getExporterIdentifierMacro() + ")"); - } - } - } - - static void writeInclude (Project& project, OutputStream& out, const String& pathFromJuceFolder) - { - StringArray paths, guards; - createMultipleIncludes (project, pathFromJuceFolder, paths, guards); - - StringArray uniquePaths (paths); - uniquePaths.removeDuplicates (false); - - if (uniquePaths.size() == 1) - { - out << "#include " << paths[0] << newLine; - } - else - { - int i = paths.size(); - for (; --i >= 0;) - { - for (int j = i; --j >= 0;) - { - if (paths[i] == paths[j] && guards[i] == guards[j]) - { - paths.remove (i); - guards.remove (i); - } - } - } - - for (i = 0; i < paths.size(); ++i) - { - out << (i == 0 ? "#if " : "#elif ") << guards[i] << newLine - << " #include " << paths[i] << newLine; - } - - out << "#endif" << newLine; - } - } -}; - -//============================================================================== -#define JUCE_PLUGINS_ROOT "src/audio/plugin_client/" -#define JUCE_PLUGINS_PATH_VST JUCE_PLUGINS_ROOT "VST/" -#define JUCE_PLUGINS_PATH_RTAS JUCE_PLUGINS_ROOT "RTAS/" -#define JUCE_PLUGINS_PATH_AU JUCE_PLUGINS_ROOT "AU/" - -//============================================================================== -class VSTLibraryModule : public LibraryModule -{ -public: - VSTLibraryModule() {} - - void getHeaderFiles (Project& project, StringArray& includePaths, StringArray& headerGuards) - { - } - - void prepareExporter (ProjectExporter& exporter, ProjectSaver& projectSaver) const - { - fixMissingValues (exporter); - writePluginCharacteristicsFile (projectSaver); - - exporter.makefileTargetSuffix = ".so"; - - Project::Item group (Project::Item::createGroup (const_cast (exporter).getProject(), "Juce VST Wrapper")); - group.setID ("__jucevstfiles"); - - const char* osxFiles[] = { JUCE_PLUGINS_PATH_VST "juce_VST_Wrapper.cpp", - JUCE_PLUGINS_PATH_VST "juce_VST_Wrapper.mm", 0 }; - - const char* winFiles[] = { JUCE_PLUGINS_PATH_VST "juce_VST_Wrapper.cpp", 0}; - - for (const char** f = (exporter.isXcode() ? osxFiles : winFiles); *f != 0; ++f) - group.addRelativeFile (exporter.getJucePathFromProjectFolder().getChildFile (*f), -1, true); - - exporter.groups.add (group); - } - - void addExtraSearchPaths (const ProjectExporter& exporter, StringArray& paths) const - { - RelativePath juceWrapperFolder (exporter.getProject().getGeneratedCodeFolder(), - exporter.getTargetFolder(), RelativePath::buildTargetFolder); - - addVSTFolderToPath (exporter, paths); - - if (exporter.isVisualStudio()) - paths.add (juceWrapperFolder.toWindowsStyle()); - else if (exporter.isLinux()) - paths.add (juceWrapperFolder.toUnixStyle()); - } - - void createPropertyEditors (const ProjectExporter& exporter, Array & props) const - { - fixMissingValues (exporter); - createVSTPathEditor (exporter, props); - } - - void getConfigFlags (Project& project, OwnedArray& flags) const - { - } - - static void fixMissingValues (const ProjectExporter& exporter) - { - if (getVSTFolder (exporter).toString().isEmpty()) - { - if (exporter.isVisualStudio()) - getVSTFolder (exporter) = "c:\\SDKs\\vstsdk2.4"; - else - getVSTFolder (exporter) = "~/SDKs/vstsdk2.4"; - } - } -}; - -//============================================================================== -class RTASLibraryModule : public LibraryModule -{ -public: - RTASLibraryModule() {} - - void getHeaderFiles (Project& project, StringArray& includePaths, StringArray& headerGuards) - { - } - - void prepareExporter (ProjectExporter& exporter, ProjectSaver& projectSaver) const - { - fixMissingValues (exporter); - - exporter.xcodeCanUseDwarf = false; - - exporter.msvcTargetSuffix = ".dpm"; - exporter.msvcNeedsDLLRuntimeLib = true; - - RelativePath rtasFolder (getRTASFolder (exporter).toString(), RelativePath::projectFolder); - exporter.msvcExtraPreprocessorDefs.set ("JucePlugin_WinBag_path", CodeHelpers::addEscapeChars (rtasFolder.getChildFile ("WinBag") - .toWindowsStyle().quoted())); - - exporter.msvcExtraLinkerOptions = "/FORCE:multiple"; - exporter.msvcDelayLoadedDLLs = "DAE.dll; DigiExt.dll; DSI.dll; PluginLib.dll; DSPManager.dll"; - exporter.msvcModuleDefinitionFile = exporter.getJucePathFromTargetFolder() - .getChildFile (JUCE_PLUGINS_PATH_RTAS "juce_RTAS_WinExports.def") - .toWindowsStyle(); - - exporter.msvcPostBuildOutputs = "\"$(TargetPath)\".rsr"; - exporter.msvcPostBuildCommand = "copy /Y \"" + exporter.getJucePathFromTargetFolder() - .getChildFile (JUCE_PLUGINS_PATH_RTAS "juce_RTAS_WinResources.rsr") - .toWindowsStyle() - + "\" \"$(TargetPath)\".rsr"; - - - exporter.xcodeExtraLibrariesDebug.add (rtasFolder.getChildFile ("MacBag/Libs/Debug/libPluginLibrary.a")); - exporter.xcodeExtraLibrariesRelease.add (rtasFolder.getChildFile ("MacBag/Libs/Release/libPluginLibrary.a")); - - writePluginCharacteristicsFile (projectSaver); - - if (exporter.isXcode() || exporter.isVisualStudio()) - { - Project::Item group (Project::Item::createGroup (const_cast (exporter).getProject(), "Juce RTAS Wrapper")); - group.setID ("__jucertasfiles"); - - const char* osxFiles[] = { JUCE_PLUGINS_PATH_RTAS "juce_RTAS_DigiCode1.cpp", - JUCE_PLUGINS_PATH_RTAS "juce_RTAS_DigiCode2.cpp", - JUCE_PLUGINS_PATH_RTAS "juce_RTAS_DigiCode3.cpp", - JUCE_PLUGINS_PATH_RTAS "juce_RTAS_DigiCode_Header.h", - JUCE_PLUGINS_PATH_RTAS "juce_RTAS_MacResources.r", - JUCE_PLUGINS_PATH_RTAS "juce_RTAS_MacUtilities.mm", - JUCE_PLUGINS_PATH_RTAS "juce_RTAS_Wrapper.cpp", 0 }; - - const char* winFiles[] = { JUCE_PLUGINS_PATH_RTAS "juce_RTAS_DigiCode1.cpp", - JUCE_PLUGINS_PATH_RTAS "juce_RTAS_DigiCode2.cpp", - JUCE_PLUGINS_PATH_RTAS "juce_RTAS_DigiCode3.cpp", - JUCE_PLUGINS_PATH_RTAS "juce_RTAS_DigiCode_Header.h", - JUCE_PLUGINS_PATH_RTAS "juce_RTAS_WinUtilities.cpp", - JUCE_PLUGINS_PATH_RTAS "juce_RTAS_Wrapper.cpp" , 0}; - - for (const char** f = (exporter.isXcode() ? osxFiles : winFiles); *f != 0; ++f) - { - const RelativePath file (exporter.getJucePathFromProjectFolder().getChildFile (*f)); - group.addRelativeFile (file, -1, file.hasFileExtension ("cpp;mm;r")); - - const Project::Item& last = group.getChild (group.getNumChildren() - 1); - last.getShouldInhibitWarningsValue() = true; - last.getShouldUseStdCallValue() = true; - } - - exporter.groups.add (group); - } - } - - void addExtraSearchPaths (const ProjectExporter& exporter, StringArray& paths) const - { - RelativePath rtasFolder (getRTASFolder (exporter).toString(), RelativePath::projectFolder); - - if (exporter.isVisualStudio()) - { - RelativePath juceWrapperFolder (exporter.getProject().getGeneratedCodeFolder(), - exporter.getTargetFolder(), RelativePath::buildTargetFolder); - - paths.add (juceWrapperFolder.toWindowsStyle()); - - const char* p[] = { "AlturaPorts/TDMPlugins/PluginLibrary/EffectClasses", - "AlturaPorts/TDMPlugins/PluginLibrary/ProcessClasses", - "AlturaPorts/TDMPlugins/PluginLibrary/ProcessClasses/Interfaces", - "AlturaPorts/TDMPlugins/PluginLibrary/Utilities", - "AlturaPorts/TDMPlugins/PluginLibrary/RTASP_Adapt", - "AlturaPorts/TDMPlugins/PluginLibrary/CoreClasses", - "AlturaPorts/TDMPlugins/PluginLibrary/Controls", - "AlturaPorts/TDMPlugins/PluginLibrary/Meters", - "AlturaPorts/TDMPlugins/PluginLibrary/ViewClasses", - "AlturaPorts/TDMPlugins/PluginLibrary/DSPClasses", - "AlturaPorts/TDMPlugins/PluginLibrary/Interfaces", - "AlturaPorts/TDMPlugins/common", - "AlturaPorts/TDMPlugins/common/Platform", - "AlturaPorts/TDMPlugins/SignalProcessing/Public", - "AlturaPorts/TDMPlugIns/DSPManager/Interfaces", - "AlturaPorts/SADriver/Interfaces", - "AlturaPorts/DigiPublic/Interfaces", - "AlturaPorts/Fic/Interfaces/DAEClient", - "AlturaPorts/NewFileLibs/Cmn", - "AlturaPorts/NewFileLibs/DOA", - "AlturaPorts/AlturaSource/PPC_H", - "AlturaPorts/AlturaSource/AppSupport", - "AvidCode/AVX2sdk/AVX/avx2/avx2sdk/inc", - "xplat/AVX/avx2/avx2sdk/inc" }; - - for (int i = 0; i < numElementsInArray (p); ++i) - paths.add (exporter.rebaseFromProjectFolderToBuildTarget (rtasFolder.getChildFile (p[i])).toWindowsStyle()); - } - else if (exporter.isXcode()) - { - paths.add ("/Developer/Headers/FlatCarbon"); - - const char* p[] = { "AlturaPorts/TDMPlugIns/PlugInLibrary/Controls", - "AlturaPorts/TDMPlugIns/PlugInLibrary/CoreClasses", - "AlturaPorts/TDMPlugIns/PlugInLibrary/DSPClasses", - "AlturaPorts/TDMPlugIns/PlugInLibrary/EffectClasses", - "AlturaPorts/TDMPlugIns/PlugInLibrary/MacBuild", - "AlturaPorts/TDMPlugIns/PlugInLibrary/Meters", - "AlturaPorts/TDMPlugIns/PlugInLibrary/ProcessClasses", - "AlturaPorts/TDMPlugIns/PlugInLibrary/ProcessClasses/Interfaces", - "AlturaPorts/TDMPlugIns/PlugInLibrary/RTASP_Adapt", - "AlturaPorts/TDMPlugIns/PlugInLibrary/Utilities", - "AlturaPorts/TDMPlugIns/PlugInLibrary/ViewClasses", - "AlturaPorts/TDMPlugIns/DSPManager/**", - "AlturaPorts/TDMPlugIns/SupplementalPlugInLib/Encryption", - "AlturaPorts/TDMPlugIns/SupplementalPlugInLib/GraphicsExtensions", - "AlturaPorts/TDMPlugIns/common", - "AlturaPorts/TDMPlugIns/common/PI_LibInterface", - "AlturaPorts/TDMPlugIns/PACEProtection/**", - "AlturaPorts/TDMPlugIns/SignalProcessing/**", - "AlturaPorts/OMS/Headers", - "AlturaPorts/Fic/Interfaces/**", - "AlturaPorts/Fic/Source/SignalNets", - "AlturaPorts/DSIPublicInterface/PublicHeaders", - "DAEWin/Include", - "AlturaPorts/DigiPublic/Interfaces", - "AlturaPorts/DigiPublic", - "AlturaPorts/NewFileLibs/DOA", - "AlturaPorts/NewFileLibs/Cmn", - "xplat/AVX/avx2/avx2sdk/inc", - "xplat/AVX/avx2/avx2sdk/utils" }; - - for (int i = 0; i < numElementsInArray (p); ++i) - paths.add (exporter.rebaseFromProjectFolderToBuildTarget (rtasFolder.getChildFile (p[i])).toUnixStyle()); - } - } - - void createPropertyEditors (const ProjectExporter& exporter, Array & props) const - { - if (exporter.isXcode() || exporter.isVisualStudio()) - { - fixMissingValues (exporter); - - props.add (new TextPropertyComponent (getRTASFolder (exporter), "RTAS Folder", 1024, false)); - props.getLast()->setTooltip ("If you're building an RTAS, this must be the folder containing the RTAS SDK. This should be an absolute path."); - } - } - - void getConfigFlags (Project& project, OwnedArray& flags) const - { - } - - static void fixMissingValues (const ProjectExporter& exporter) - { - if (getRTASFolder (exporter).toString().isEmpty()) - { - if (exporter.isVisualStudio()) - getRTASFolder (exporter) = "c:\\SDKs\\PT_80_SDK"; - else - getRTASFolder (exporter) = "~/SDKs/PT_80_SDK"; - } - } - - static Value getRTASFolder (const ProjectExporter& exporter) { return exporter.getSetting (Ids::rtasFolder); } -}; - -//============================================================================== -class AULibraryModule : public LibraryModule -{ -public: - AULibraryModule() {} - - void getHeaderFiles (Project& project, StringArray& includePaths, StringArray& headerGuards) - { - } - - void prepareExporter (ProjectExporter& exporter, ProjectSaver& projectSaver) const - { - writePluginCharacteristicsFile (projectSaver); - - if (exporter.isXcode()) - { - exporter.xcodeFrameworks.addTokens ("AudioUnit CoreAudioKit", false); - - Project::Item group (Project::Item::createGroup (const_cast (exporter).getProject(), "Juce AU Wrapper")); - group.setID ("__juceaufiles"); - - { - const char* files[] = { JUCE_PLUGINS_PATH_AU "juce_AU_Resources.r", - JUCE_PLUGINS_PATH_AU "juce_AU_Wrapper.mm", 0 }; - - for (const char** f = files; *f != 0; ++f) - group.addRelativeFile (exporter.getJucePathFromProjectFolder().getChildFile (*f), -1, true); - } - - Project::Item subGroup (group.addNewSubGroup ("Apple AU Files", -1)); - subGroup.setID ("__juceappleaufiles"); - - { - #define JUCE_AU_PUBLICUTILITY "${DEVELOPER_DIR}/Extras/CoreAudio/PublicUtility/" - #define JUCE_AU_PUBLIC "${DEVELOPER_DIR}/Extras/CoreAudio/AudioUnits/AUPublic/" - - const char* appleAUFiles[] = { JUCE_AU_PUBLICUTILITY "CADebugMacros.h", - JUCE_AU_PUBLICUTILITY "CAAUParameter.cpp", - JUCE_AU_PUBLICUTILITY "CAAUParameter.h", - JUCE_AU_PUBLICUTILITY "CAAudioChannelLayout.cpp", - JUCE_AU_PUBLICUTILITY "CAAudioChannelLayout.h", - JUCE_AU_PUBLICUTILITY "CAMutex.cpp", - JUCE_AU_PUBLICUTILITY "CAMutex.h", - JUCE_AU_PUBLICUTILITY "CAStreamBasicDescription.cpp", - JUCE_AU_PUBLICUTILITY "CAStreamBasicDescription.h", - JUCE_AU_PUBLICUTILITY "CAVectorUnitTypes.h", - JUCE_AU_PUBLICUTILITY "CAVectorUnit.cpp", - JUCE_AU_PUBLICUTILITY "CAVectorUnit.h", - JUCE_AU_PUBLIC "AUViewBase/AUViewLocalizedStringKeys.h", - JUCE_AU_PUBLIC "AUCarbonViewBase/AUCarbonViewDispatch.cpp", - JUCE_AU_PUBLIC "AUCarbonViewBase/AUCarbonViewControl.cpp", - JUCE_AU_PUBLIC "AUCarbonViewBase/AUCarbonViewControl.h", - JUCE_AU_PUBLIC "AUCarbonViewBase/CarbonEventHandler.cpp", - JUCE_AU_PUBLIC "AUCarbonViewBase/CarbonEventHandler.h", - JUCE_AU_PUBLIC "AUCarbonViewBase/AUCarbonViewBase.cpp", - JUCE_AU_PUBLIC "AUCarbonViewBase/AUCarbonViewBase.h", - JUCE_AU_PUBLIC "AUBase/AUBase.cpp", - JUCE_AU_PUBLIC "AUBase/AUBase.h", - JUCE_AU_PUBLIC "AUBase/AUDispatch.cpp", - JUCE_AU_PUBLIC "AUBase/AUDispatch.h", - JUCE_AU_PUBLIC "AUBase/AUInputElement.cpp", - JUCE_AU_PUBLIC "AUBase/AUInputElement.h", - JUCE_AU_PUBLIC "AUBase/AUOutputElement.cpp", - JUCE_AU_PUBLIC "AUBase/AUOutputElement.h", - JUCE_AU_PUBLIC "AUBase/AUResources.r", - JUCE_AU_PUBLIC "AUBase/AUScopeElement.cpp", - JUCE_AU_PUBLIC "AUBase/AUScopeElement.h", - JUCE_AU_PUBLIC "AUBase/ComponentBase.cpp", - JUCE_AU_PUBLIC "AUBase/ComponentBase.h", - JUCE_AU_PUBLIC "OtherBases/AUMIDIBase.cpp", - JUCE_AU_PUBLIC "OtherBases/AUMIDIBase.h", - JUCE_AU_PUBLIC "OtherBases/AUMIDIEffectBase.cpp", - JUCE_AU_PUBLIC "OtherBases/AUMIDIEffectBase.h", - JUCE_AU_PUBLIC "OtherBases/AUOutputBase.cpp", - JUCE_AU_PUBLIC "OtherBases/AUOutputBase.h", - JUCE_AU_PUBLIC "OtherBases/MusicDeviceBase.cpp", - JUCE_AU_PUBLIC "OtherBases/MusicDeviceBase.h", - JUCE_AU_PUBLIC "OtherBases/AUEffectBase.cpp", - JUCE_AU_PUBLIC "OtherBases/AUEffectBase.h", - JUCE_AU_PUBLIC "Utility/AUBuffer.cpp", - JUCE_AU_PUBLIC "Utility/AUBuffer.h", - JUCE_AU_PUBLIC "Utility/AUDebugDispatcher.cpp", - JUCE_AU_PUBLIC "Utility/AUDebugDispatcher.h", - JUCE_AU_PUBLIC "Utility/AUInputFormatConverter.h", - JUCE_AU_PUBLIC "Utility/AUSilentTimeout.h", - JUCE_AU_PUBLIC "Utility/AUTimestampGenerator.h", 0 }; - - for (const char** f = appleAUFiles; *f != 0; ++f) - { - const RelativePath file (*f, RelativePath::projectFolder); - subGroup.addRelativeFile (file, -1, file.hasFileExtension ("cpp;mm")); - subGroup.getChild (subGroup.getNumChildren() - 1).getShouldInhibitWarningsValue() = true; - } - } - - exporter.groups.add (group); - } - } - - void addExtraSearchPaths (const ProjectExporter& exporter, StringArray& paths) const - { - if (exporter.isXcode()) - { - paths.add ("$(DEVELOPER_DIR)/Extras/CoreAudio/PublicUtility"); - paths.add ("$(DEVELOPER_DIR)/Extras/CoreAudio/AudioUnits/AUPublic/Utility"); - } - } - - void createPropertyEditors (const ProjectExporter& exporter, Array & props) const - { - } - - void getConfigFlags (Project& project, OwnedArray& flags) const - { - } -}; - - -//============================================================================== //============================================================================== ProjectType::ProjectType (const String& type_, const String& desc_) : type (type_), desc (desc_) @@ -861,8 +38,6 @@ ProjectType::ProjectType (const String& type_, const String& desc_) ProjectType::~ProjectType() { - JuceModule::findAllModuleIDs(); - getAllTypes().removeValue (this); } @@ -884,11 +59,6 @@ const ProjectType* ProjectType::findType (const String& typeCode) return nullptr; } -void ProjectType::createRequiredModules (Project& project, OwnedArray& modules) const -{ - modules.add (new JuceLibraryModule()); -} - //============================================================================== class ProjectType_GUIApp : public ProjectType { @@ -902,7 +72,7 @@ public: { } - void createPropertyEditors (const Project& project, Array & props) const + void createPropertyEditors (const Project&, PropertyListBuilder&) const { } @@ -919,11 +89,6 @@ public: exporter.msvcIsWindowsSubsystem = true; exporter.msvcTargetSuffix = ".exe"; } - - void createRequiredModules (Project& project, OwnedArray& modules) const - { - ProjectType::createRequiredModules (project, modules); - } }; //============================================================================== @@ -939,7 +104,7 @@ public: { } - void createPropertyEditors (const Project& project, Array & props) const + void createPropertyEditors (const Project& project, PropertyListBuilder& props) const { } @@ -955,11 +120,6 @@ public: exporter.msvcTargetSuffix = ".exe"; exporter.msvcExtraPreprocessorDefs.set ("_CONSOLE", ""); } - - void createRequiredModules (Project& project, OwnedArray& modules) const - { - ProjectType::createRequiredModules (project, modules); - } }; //============================================================================== @@ -975,7 +135,7 @@ public: { } - void createPropertyEditors (const Project& project, Array & props) const + void createPropertyEditors (const Project&, PropertyListBuilder&) const { } @@ -988,13 +148,9 @@ public: exporter.makefileTargetSuffix = ".so"; - exporter.msvcTargetSuffix = ".lib"; - exporter.msvcExtraPreprocessorDefs.set ("_LIB", ""); - } + exporter.msvcTargetSuffix = exporter.getSetting (Ids::libraryType) == 2 ? ".dll" : ".lib"; - void createRequiredModules (Project& project, OwnedArray& modules) const - { - ProjectType::createRequiredModules (project, modules); + exporter.msvcExtraPreprocessorDefs.set ("_LIB", ""); } }; @@ -1035,62 +191,62 @@ public: } } - void createPropertyEditors (const Project& project, Array & props) const + void createPropertyEditors (const Project& project, PropertyListBuilder& props) const { - props.add (new BooleanPropertyComponent (shouldBuildVST (project), "Build VST", "Enabled")); - props.getLast()->setTooltip ("Whether the project should produce a VST plugin."); - props.add (new BooleanPropertyComponent (shouldBuildAU (project), "Build AudioUnit", "Enabled")); - props.getLast()->setTooltip ("Whether the project should produce an AudioUnit plugin."); - props.add (new BooleanPropertyComponent (shouldBuildRTAS (project), "Build RTAS", "Enabled")); - props.getLast()->setTooltip ("Whether the project should produce an RTAS plugin."); + props.add (new BooleanPropertyComponent (shouldBuildVST (project), "Build VST", "Enabled"), + "Whether the project should produce a VST plugin."); + props.add (new BooleanPropertyComponent (shouldBuildAU (project), "Build AudioUnit", "Enabled"), + "Whether the project should produce an AudioUnit plugin."); + props.add (new BooleanPropertyComponent (shouldBuildRTAS (project), "Build RTAS", "Enabled"), + "Whether the project should produce an RTAS plugin."); - props.add (new TextPropertyComponent (getPluginName (project), "Plugin Name", 128, false)); - props.getLast()->setTooltip ("The name of your plugin (keep it short!)"); - props.add (new TextPropertyComponent (getPluginDesc (project), "Plugin Description", 256, false)); - props.getLast()->setTooltip ("A short description of your plugin."); + props.add (new TextPropertyComponent (getPluginName (project), "Plugin Name", 128, false), + "The name of your plugin (keep it short!)"); + props.add (new TextPropertyComponent (getPluginDesc (project), "Plugin Description", 256, false), + "A short description of your plugin."); - props.add (new TextPropertyComponent (getPluginManufacturer (project), "Plugin Manufacturer", 256, false)); - props.getLast()->setTooltip ("The name of your company (cannot be blank)."); - props.add (new TextPropertyComponent (getPluginManufacturerCode (project), "Plugin Manufacturer Code", 4, false)); - props.getLast()->setTooltip ("A four-character unique ID for your company. Note that for AU compatibility, this must contain at least one upper-case letter!"); - props.add (new TextPropertyComponent (getPluginCode (project), "Plugin Code", 4, false)); - props.getLast()->setTooltip ("A four-character unique ID for your plugin. Note that for AU compatibility, this must contain at least one upper-case letter!"); + props.add (new TextPropertyComponent (getPluginManufacturer (project), "Plugin Manufacturer", 256, false), + "The name of your company (cannot be blank)."); + props.add (new TextPropertyComponent (getPluginManufacturerCode (project), "Plugin Manufacturer Code", 4, false), + "A four-character unique ID for your company. Note that for AU compatibility, this must contain at least one upper-case letter!"); + props.add (new TextPropertyComponent (getPluginCode (project), "Plugin Code", 4, false), + "A four-character unique ID for your plugin. Note that for AU compatibility, this must contain at least one upper-case letter!"); - props.add (new TextPropertyComponent (getPluginChannelConfigs (project), "Plugin Channel Configurations", 256, false)); - props.getLast()->setTooltip ("This is the set of input/output channel configurations that your plugin can handle. The list is a comma-separated set of pairs of values in the form { numInputs, numOutputs }, and each " - "pair indicates a valid configuration that the plugin can handle. So for example, {1, 1}, {2, 2} means that the plugin can be used in just two configurations: either with 1 input " - "and 1 output, or with 2 inputs and 2 outputs."); + props.add (new TextPropertyComponent (getPluginChannelConfigs (project), "Plugin Channel Configurations", 256, false), + "This is the set of input/output channel configurations that your plugin can handle. The list is a comma-separated set of pairs of values in the form { numInputs, numOutputs }, and each " + "pair indicates a valid configuration that the plugin can handle. So for example, {1, 1}, {2, 2} means that the plugin can be used in just two configurations: either with 1 input " + "and 1 output, or with 2 inputs and 2 outputs."); - props.add (new BooleanPropertyComponent (getPluginIsSynth (project), "Plugin is a Synth", "Is a Synth")); - props.getLast()->setTooltip ("Enable this if you want your plugin to be treated as a synth or generator. It doesn't make much difference to the plugin itself, but some hosts treat synths differently to other plugins."); + props.add (new BooleanPropertyComponent (getPluginIsSynth (project), "Plugin is a Synth", "Is a Synth"), + "Enable this if you want your plugin to be treated as a synth or generator. It doesn't make much difference to the plugin itself, but some hosts treat synths differently to other plugins."); - props.add (new BooleanPropertyComponent (getPluginWantsMidiInput (project), "Plugin Midi Input", "Plugin wants midi input")); - props.getLast()->setTooltip ("Enable this if you want your plugin to accept midi messages."); + props.add (new BooleanPropertyComponent (getPluginWantsMidiInput (project), "Plugin Midi Input", "Plugin wants midi input"), + "Enable this if you want your plugin to accept midi messages."); - props.add (new BooleanPropertyComponent (getPluginProducesMidiOut (project), "Plugin Midi Output", "Plugin produces midi output")); - props.getLast()->setTooltip ("Enable this if your plugin is going to produce midi messages."); + props.add (new BooleanPropertyComponent (getPluginProducesMidiOut (project), "Plugin Midi Output", "Plugin produces midi output"), + "Enable this if your plugin is going to produce midi messages."); - props.add (new BooleanPropertyComponent (getPluginSilenceInProducesSilenceOut (project), "Silence", "Silence in produces silence out")); - props.getLast()->setTooltip ("Enable this if your plugin has no tail - i.e. if passing a silent buffer to it will always result in a silent buffer being produced."); + props.add (new BooleanPropertyComponent (getPluginSilenceInProducesSilenceOut (project), "Silence", "Silence in produces silence out"), + "Enable this if your plugin has no tail - i.e. if passing a silent buffer to it will always result in a silent buffer being produced."); - props.add (new TextPropertyComponent (getPluginTailLengthSeconds (project), "Tail Length (in seconds)", 12, false)); - props.getLast()->setTooltip ("This indicates the length, in seconds, of the plugin's tail. This information may or may not be used by the host."); + props.add (new TextPropertyComponent (getPluginTailLengthSeconds (project), "Tail Length (in seconds)", 12, false), + "This indicates the length, in seconds, of the plugin's tail. This information may or may not be used by the host."); - props.add (new BooleanPropertyComponent (getPluginEditorNeedsKeyFocus (project), "Key Focus", "Plugin editor requires keyboard focus")); - props.getLast()->setTooltip ("Enable this if your plugin needs keyboard input - some hosts can be a bit funny about keyboard focus.."); + props.add (new BooleanPropertyComponent (getPluginEditorNeedsKeyFocus (project), "Key Focus", "Plugin editor requires keyboard focus"), + "Enable this if your plugin needs keyboard input - some hosts can be a bit funny about keyboard focus.."); - props.add (new TextPropertyComponent (getPluginAUExportPrefix (project), "Plugin AU Export Prefix", 64, false)); - props.getLast()->setTooltip ("A prefix for the names of exported entry-point functions that the component exposes - typically this will be a version of your plugin's name that can be used as part of a C++ token."); + props.add (new TextPropertyComponent (getPluginAUExportPrefix (project), "Plugin AU Export Prefix", 64, false), + "A prefix for the names of exported entry-point functions that the component exposes - typically this will be a version of your plugin's name that can be used as part of a C++ token."); - props.add (new TextPropertyComponent (getPluginAUCocoaViewClassName (project), "Plugin AU Cocoa View Name", 64, false)); - props.getLast()->setTooltip ("In an AU, this is the name of Cocoa class that creates the UI. Some hosts bizarrely display the class-name, so you might want to make it reflect your plugin. But the name must be " - "UNIQUE to this exact version of your plugin, to avoid objective-C linkage mix-ups that happen when different plugins containing the same class-name are loaded simultaneously."); + props.add (new TextPropertyComponent (getPluginAUCocoaViewClassName (project), "Plugin AU Cocoa View Name", 64, false), + "In an AU, this is the name of Cocoa class that creates the UI. Some hosts bizarrely display the class-name, so you might want to make it reflect your plugin. But the name must be " + "UNIQUE to this exact version of your plugin, to avoid objective-C linkage mix-ups that happen when different plugins containing the same class-name are loaded simultaneously."); - props.add (new TextPropertyComponent (getPluginRTASCategory (project), "Plugin RTAS Category", 64, false)); - props.getLast()->setTooltip ("(Leave this blank if your plugin is a synth). This is one of the RTAS categories from FicPluginEnums.h, such as: ePlugInCategory_None, ePlugInCategory_EQ, ePlugInCategory_Dynamics, " - "ePlugInCategory_PitchShift, ePlugInCategory_Reverb, ePlugInCategory_Delay, " - "ePlugInCategory_Modulation, ePlugInCategory_Harmonic, ePlugInCategory_NoiseReduction, " - "ePlugInCategory_Dither, ePlugInCategory_SoundField"); + props.add (new TextPropertyComponent (getPluginRTASCategory (project), "Plugin RTAS Category", 64, false), + "(Leave this blank if your plugin is a synth). This is one of the RTAS categories from FicPluginEnums.h, such as: ePlugInCategory_None, ePlugInCategory_EQ, ePlugInCategory_Dynamics, " + "ePlugInCategory_PitchShift, ePlugInCategory_Reverb, ePlugInCategory_Delay, " + "ePlugInCategory_Modulation, ePlugInCategory_Harmonic, ePlugInCategory_NoiseReduction, " + "ePlugInCategory_Dither, ePlugInCategory_SoundField"); } void prepareExporter (ProjectExporter& exporter) const @@ -1116,15 +272,6 @@ public: exporter.makefileIsDLL = true; } - - void createRequiredModules (Project& project, OwnedArray& modules) const - { - ProjectType::createRequiredModules (project, modules); - - if (shouldBuildVST (project).getValue()) modules.add (new VSTLibraryModule()); - if (shouldBuildRTAS (project).getValue()) modules.add (new RTASLibraryModule()); - if (shouldBuildAU (project).getValue()) modules.add (new AULibraryModule()); - } }; //============================================================================== @@ -1145,16 +292,29 @@ public: exporter.xcodeProductType = "com.apple.product-type.bundle"; exporter.xcodeProductInstallPath = "$(HOME)/Library/Internet Plug-Ins//"; + { + XmlElement mimeTypesKey ("key"); + mimeTypesKey.setText ("WebPluginMIMETypes"); + + XmlElement mimeTypesEntry ("dict"); + const String exeName (exporter.getProject().getProjectFilenameRoot().toLowerCase()); + mimeTypesEntry.createNewChildElement ("key")->setText ("application/" + exeName + "-plugin"); + XmlElement* d = mimeTypesEntry.createNewChildElement ("dict"); + d->createNewChildElement ("key")->setText ("WebPluginExtensions"); + d->createNewChildElement ("array") + ->createNewChildElement ("string")->setText (exeName); + d->createNewChildElement ("key")->setText ("WebPluginTypeDescription"); + d->createNewChildElement ("string")->setText (exporter.getProject().getProjectName().toString()); + + exporter.xcodeExtraPListEntries.add (mimeTypesKey); + exporter.xcodeExtraPListEntries.add (mimeTypesEntry); + } + exporter.msvcTargetSuffix = ".dll"; exporter.msvcIsDLL = true; exporter.makefileIsDLL = true; } - - void createRequiredModules (Project& project, OwnedArray& modules) const - { - ProjectType::createRequiredModules (project, modules); - } }; //============================================================================== diff --git a/extras/Introjucer/Source/Project/jucer_ProjectType.h b/extras/Introjucer/Source/Project/jucer_ProjectType.h index 7e30cb9f18..fb18b084b9 100644 --- a/extras/Introjucer/Source/Project/jucer_ProjectType.h +++ b/extras/Introjucer/Source/Project/jucer_ProjectType.h @@ -2,7 +2,7 @@ ============================================================================== This file is part of the JUCE library - "Jules' Utility Class Extensions" - Copyright 2004-10 by Raw Material Software Ltd. + Copyright 2004-11 by Raw Material Software Ltd. ------------------------------------------------------------------------------ @@ -27,24 +27,8 @@ #define __JUCER_PROJECTTYPE_JUCEHEADER__ #include "../jucer_Headers.h" -#include "jucer_Project.h" +class Project; class ProjectExporter; -class ProjectSaver; - -//============================================================================== -class LibraryModule -{ -public: - LibraryModule(); - virtual ~LibraryModule() {} - - virtual void prepareExporter (ProjectExporter&, ProjectSaver&) const = 0; - virtual void getHeaderFiles (Project&, StringArray& includePaths, StringArray& headerGuards) = 0; - virtual void addExtraSearchPaths (const ProjectExporter&, StringArray& paths) const = 0; - virtual void createPropertyEditors (const ProjectExporter&, Array &) const = 0; - virtual void getConfigFlags (Project&, OwnedArray&) const = 0; -}; - //============================================================================== class ProjectType @@ -72,9 +56,8 @@ public: static const char* getAudioPluginTypeName(); virtual void setMissingProjectProperties (Project&) const = 0; - virtual void createPropertyEditors (const Project&, Array &) const = 0; + virtual void createPropertyEditors (const Project&, PropertyListBuilder&) const = 0; virtual void prepareExporter (ProjectExporter&) const = 0; - virtual void createRequiredModules (Project&, OwnedArray& modules) const; protected: ProjectType (const String& type, const String& desc); @@ -86,4 +69,4 @@ private: }; -#endif // __JUCE_PROJECTTYPE_H_C1C6BC3E__ +#endif // __JUCER_PROJECTTYPE_JUCEHEADER__ diff --git a/extras/Introjucer/Source/Project/jucer_TreeViewTypes.cpp b/extras/Introjucer/Source/Project/jucer_TreeViewTypes.cpp index 1748c06fc2..d62a37fe6f 100644 --- a/extras/Introjucer/Source/Project/jucer_TreeViewTypes.cpp +++ b/extras/Introjucer/Source/Project/jucer_TreeViewTypes.cpp @@ -2,7 +2,7 @@ ============================================================================== This file is part of the JUCE library - "Jules' Utility Class Extensions" - Copyright 2004-10 by Raw Material Software Ltd. + Copyright 2004-11 by Raw Material Software Ltd. ------------------------------------------------------------------------------ @@ -62,7 +62,7 @@ void GroupTreeViewItem::addFiles (const StringArray& files, int insertIndex) { const File file (files[i]); - if (item.addFile (file, insertIndex)) + if (item.addFile (file, insertIndex, true)) ++insertIndex; } } @@ -102,7 +102,7 @@ void GroupTreeViewItem::showDocument() if (pcc != nullptr) { if (isRoot()) - pcc->setEditorComponent (new ProjectInformationComponent (item.getProject()), 0); + pcc->setEditorComponent (new ProjectInformationComponent (item.project), 0); else pcc->setEditorComponent (new GroupInformationComponent (item), 0); } @@ -120,13 +120,17 @@ void GroupTreeViewItem::showPopupMenu() if (! isRoot()) m.addItem (2, "Delete"); - const int res = m.show(); - switch (res) + launchPopupMenu (m); +} + +void GroupTreeViewItem::handlePopupMenuResult (int resultCode) +{ + switch (resultCode) { case 1: triggerAsyncRename (item); break; case 2: deleteAllSelectedItems(); break; - case 3: item.sortAlphabetically(); break; - default: processCreateFileMenuItem (res); break; + case 3: item.sortAlphabetically (false); break; + default: processCreateFileMenuItem (resultCode); break; } } @@ -194,7 +198,7 @@ void SourceFileTreeViewItem::setName (const String& newName) if (correspondingFile.exists() && newFile.hasFileExtension (oldFile.getFileExtension())) { - Project::Item correspondingItem (item.getProject().getMainGroup().findItemForFile (correspondingFile)); + Project::Item correspondingItem (item.project.getMainGroup().findItemForFile (correspondingFile)); if (correspondingItem.isValid()) { @@ -228,7 +232,7 @@ void SourceFileTreeViewItem::setName (const String& newName) ProjectTreeViewBase* SourceFileTreeViewItem::createSubItem (const Project::Item& child) { jassertfalse - return 0; + return nullptr; } void SourceFileTreeViewItem::showDocument() @@ -242,10 +246,9 @@ void SourceFileTreeViewItem::showDocument() void SourceFileTreeViewItem::showPopupMenu() { - GroupTreeViewItem* parentGroup = dynamic_cast (getParentProjectItem()); - PopupMenu m; + GroupTreeViewItem* parentGroup = dynamic_cast (getParentProjectItem()); if (parentGroup != nullptr) { parentGroup->addCreateFileMenuItems (m); @@ -254,18 +257,24 @@ void SourceFileTreeViewItem::showPopupMenu() m.addItem (1, "Open in external editor"); m.addItem (2, -#if JUCE_MAC + #if JUCE_MAC "Reveal in Finder"); -#else + #else "Reveal in Explorer"); -#endif + #endif m.addItem (4, "Rename File..."); m.addSeparator(); m.addItem (3, "Delete"); - const int res = m.show(); - switch (res) + launchPopupMenu (m); +} + +void SourceFileTreeViewItem::handlePopupMenuResult (int resultCode) +{ + GroupTreeViewItem* parentGroup = dynamic_cast (getParentProjectItem()); + + switch (resultCode) { case 1: getFile().startAsProcess(); break; case 2: revealInFinder(); break; @@ -274,7 +283,7 @@ void SourceFileTreeViewItem::showPopupMenu() default: if (parentGroup != nullptr) - parentGroup->processCreateFileMenuItem (res); + parentGroup->processCreateFileMenuItem (resultCode); break; } diff --git a/extras/Introjucer/Source/Project/jucer_TreeViewTypes.h b/extras/Introjucer/Source/Project/jucer_TreeViewTypes.h index 829ea68dda..c9914a4621 100644 --- a/extras/Introjucer/Source/Project/jucer_TreeViewTypes.h +++ b/extras/Introjucer/Source/Project/jucer_TreeViewTypes.h @@ -2,7 +2,7 @@ ============================================================================== This file is part of the JUCE library - "Jules' Utility Class Extensions" - Copyright 2004-10 by Raw Material Software Ltd. + Copyright 2004-11 by Raw Material Software Ltd. ------------------------------------------------------------------------------ @@ -39,9 +39,9 @@ public: bool acceptsFileDrop (const StringArray& files) const { return false; } bool acceptsDragItems (const OwnedArray & selectedNodes) { return false; } ProjectTreeViewBase* createSubItem (const Project::Item& child); - void createLeftEdgeComponents (Array& components) {} void showDocument(); void showPopupMenu(); + void handlePopupMenuResult (int resultCode); String getDisplayName() const; void setName (const String& newName); }; @@ -59,9 +59,9 @@ public: void checkFileStatus(); void moveSelectedItemsTo (OwnedArray & selectedNodes, int insertIndex); ProjectTreeViewBase* createSubItem (const Project::Item& child); - void createLeftEdgeComponents (Array& components) {} void showDocument(); void showPopupMenu(); + void handlePopupMenuResult (int resultCode); void addFiles (const StringArray& files, int insertIndex); void addNewGroup(); diff --git a/extras/Introjucer/Source/Utility/jucer_CodeHelpers.cpp b/extras/Introjucer/Source/Utility/jucer_CodeHelpers.cpp index f5c23c47b3..406e2186d6 100644 --- a/extras/Introjucer/Source/Utility/jucer_CodeHelpers.cpp +++ b/extras/Introjucer/Source/Utility/jucer_CodeHelpers.cpp @@ -2,7 +2,7 @@ ============================================================================== This file is part of the JUCE library - "Jules' Utility Class Extensions" - Copyright 2004-10 by Raw Material Software Ltd. + Copyright 2004-11 by Raw Material Software Ltd. ------------------------------------------------------------------------------ @@ -105,23 +105,24 @@ namespace CodeHelpers } static void writeEscapeChars (OutputStream& out, const char* utf8, const int numBytes, - const int maxCharsOnLine, const bool breakAtNewLines, const bool replaceSingleQuotes) + const int maxCharsOnLine, const bool breakAtNewLines, + const bool replaceSingleQuotes, const bool allowStringBreaks) { int charsOnLine = 0; bool lastWasHexEscapeCode = false; for (int i = 0; i < numBytes || numBytes < 0; ++i) { - const char c = utf8[i]; + const unsigned char c = (unsigned char) utf8[i]; bool startNewLine = false; switch (c) { - case '\t': out << "\\t"; lastWasHexEscapeCode = false; break; - case '\r': out << "\\r"; lastWasHexEscapeCode = false; break; - case '\n': out << "\\n"; lastWasHexEscapeCode = false; startNewLine = breakAtNewLines; break; - case '\\': out << "\\\\"; lastWasHexEscapeCode = false; break; - case '\"': out << "\\\""; lastWasHexEscapeCode = false; break; + case '\t': out << "\\t"; lastWasHexEscapeCode = false; charsOnLine += 2; break; + case '\r': out << "\\r"; lastWasHexEscapeCode = false; charsOnLine += 2; break; + case '\n': out << "\\n"; lastWasHexEscapeCode = false; charsOnLine += 2; startNewLine = breakAtNewLines; break; + case '\\': out << "\\\\"; lastWasHexEscapeCode = false; charsOnLine += 2; break; + case '\"': out << "\\\""; lastWasHexEscapeCode = false; charsOnLine += 2; break; case 0: if (numBytes < 0) @@ -129,6 +130,7 @@ namespace CodeHelpers out << "\\0"; lastWasHexEscapeCode = true; + charsOnLine += 2; break; case '\'': @@ -136,6 +138,7 @@ namespace CodeHelpers { out << "\\\'"; lastWasHexEscapeCode = false; + charsOnLine += 2; break; } @@ -145,23 +148,32 @@ namespace CodeHelpers if (c >= 32 && c < 127 && ! (lastWasHexEscapeCode // (have to avoid following a hex escape sequence with a valid hex digit) && CharacterFunctions::getHexDigitValue (c) >= 0)) { - out << c; + out << (char) c; lastWasHexEscapeCode = false; + ++charsOnLine; + } + else if (allowStringBreaks && lastWasHexEscapeCode && c >= 32 && c < 127) + { + out << "\"\"" << (char) c; + lastWasHexEscapeCode = false; + charsOnLine += 3; } else { - out << (c < 16 ? "\\x0" : "\\x") << String::toHexString ((int) (unsigned int) c); + out << (c < 16 ? "\\x0" : "\\x") << String::toHexString ((int) c); lastWasHexEscapeCode = true; + charsOnLine += 4; } break; } - if ((startNewLine || (maxCharsOnLine > 0 && ++charsOnLine >= maxCharsOnLine)) + if ((startNewLine || (maxCharsOnLine > 0 && charsOnLine >= maxCharsOnLine)) && (numBytes < 0 || i < numBytes - 1)) { charsOnLine = 0; out << "\"" << newLine << "\""; + lastWasHexEscapeCode = false; } } } @@ -169,7 +181,7 @@ namespace CodeHelpers String addEscapeChars (const String& s) { MemoryOutputStream out; - writeEscapeChars (out, s.toUTF8().getAddress(), -1, -1, false, true); + writeEscapeChars (out, s.toUTF8().getAddress(), -1, -1, false, true, true); return out.toUTF8(); } @@ -180,7 +192,10 @@ namespace CodeHelpers String createIncludeStatement (const String& includePath) { - return "#include \"" + includePath + "\""; + if (includePath.startsWithChar ('<') || includePath.startsWithChar ('"')) + return "#include " + includePath; + else + return "#include \"" + includePath + "\""; } String makeHeaderGuardName (const File& file) @@ -210,54 +225,6 @@ namespace CodeHelpers return "CharPointer_UTF8 (" + CodeHelpers::addEscapeChars (text).quoted() + ")"; } - String stringLiteralIfNotEmpty (const String& text) - { - return text.isNotEmpty() ? stringLiteral (text) : String::empty; - } - - String boolLiteral (const bool b) - { - return b ? "true" : "false"; - } - - String floatLiteral (float v) - { - String s ((double) v, 4); - - if (s.containsChar ('.')) - { - s = s.trimCharactersAtEnd ("0"); - if (s.endsWithChar ('.')) - s << '0'; - - s << 'f'; - } - else - { - s << ".0f"; - } - - return s; - } - - String doubleLiteral (double v) - { - String s (v, 7); - - if (s.containsChar ('.')) - { - s = s.trimCharactersAtEnd ("0"); - if (s.endsWithChar ('.')) - s << '0'; - } - else - { - s << ".0"; - } - - return s; - } - String alignFunctionCallParams (const String& call, const StringArray& parameters, const int maxLineLength) { String result, currentLine (call); @@ -306,87 +273,8 @@ namespace CodeHelpers return "Colour (0x" + hexString8Digits ((int) col.getARGB()) + ')'; } - String justificationToCode (const Justification& justification) - { - switch (justification.getFlags()) - { - case Justification::centred: return "Justification::centred"; - case Justification::centredLeft: return "Justification::centredLeft"; - case Justification::centredRight: return "Justification::centredRight"; - case Justification::centredTop: return "Justification::centredTop"; - case Justification::centredBottom: return "Justification::centredBottom"; - case Justification::topLeft: return "Justification::topLeft"; - case Justification::topRight: return "Justification::topRight"; - case Justification::bottomLeft: return "Justification::bottomLeft"; - case Justification::bottomRight: return "Justification::bottomRight"; - case Justification::left: return "Justification::left"; - case Justification::right: return "Justification::right"; - case Justification::horizontallyCentred: return "Justification::horizontallyCentred"; - case Justification::top: return "Justification::top"; - case Justification::bottom: return "Justification::bottom"; - case Justification::verticallyCentred: return "Justification::verticallyCentred"; - case Justification::horizontallyJustified: return "Justification::horizontallyJustified"; - default: jassertfalse; break; - } - - return "Justification (" + String (justification.getFlags()) + ")"; - } - - String fontToCode (const Font& font) - { - String s ("Font ("); - String name (font.getTypefaceName()); - - if (name != Font::getDefaultSansSerifFontName()) - { - if (name == Font::getDefaultSerifFontName()) - name = "Font::getDefaultSerifFontName()"; - else if (name == Font::getDefaultMonospacedFontName()) - name = "Font::getDefaultMonospacedFontName()"; - else - name = stringLiteral (font.getTypefaceName()); - - s << name << ", "; - } - - s << floatLiteral (font.getHeight()); - - if (font.isBold() && font.isItalic()) - s << ", Font::bold | Font::italic"; - else if (font.isBold()) - s << ", Font::bold"; - else if (font.isItalic()) - s << ", Font::italic"; - else if (name != Font::getDefaultSansSerifFontName()) // need this param if we're using the typeface name constructor - s << ", Font::plain"; - - return s + ")"; - } - - String castToFloat (const String& expression) - { - if (expression.containsOnly ("0123456789.f")) - { - String s (expression.getFloatValue()); - - if (s.containsChar (T('.'))) - return s + "f"; - - return s + ".0f"; - } - - return "(float) (" + expression + ")"; - } - - String castToInt (const String& expression) - { - if (expression.containsOnly ("0123456789.")) - return String ((int) expression.getFloatValue()); - - return "(int) (" + expression + ")"; - } - - void writeDataAsCppLiteral (const MemoryBlock& mb, OutputStream& out) + void writeDataAsCppLiteral (const MemoryBlock& mb, OutputStream& out, + bool breakAtNewLines, bool allowStringBreaks) { const int maxCharsOnLine = 250; @@ -423,10 +311,14 @@ namespace CodeHelpers out << num << ','; charsOnLine += 2; + if (num >= 10) + { ++charsOnLine; - if (num >= 100) - ++charsOnLine; + + if (num >= 100) + ++charsOnLine; + } if (charsOnLine >= maxCharsOnLine) { @@ -440,11 +332,13 @@ namespace CodeHelpers else { out << "\""; - writeEscapeChars (out, (const char*) data, (int) mb.getSize(), maxCharsOnLine, true, false); + writeEscapeChars (out, (const char*) data, (int) mb.getSize(), + maxCharsOnLine, breakAtNewLines, false, allowStringBreaks); out << "\";"; } } + //============================================================================== static int calculateHash (const String& s, const int hashMultiplier) { const char* t = s.toUTF8(); @@ -457,15 +351,20 @@ namespace CodeHelpers static int findBestHashMultiplier (const StringArray& strings) { + StringArray allStrings; + + for (int i = strings.size(); --i >= 0;) + allStrings.addTokens (strings[i], "|", ""); + int v = 31; for (;;) { SortedSet hashes; bool collision = false; - for (int i = strings.size(); --i >= 0;) + for (int i = allStrings.size(); --i >= 0;) { - const int hash = calculateHash (strings[i], v); + const int hash = calculateHash (allStrings[i], v); if (hashes.contains (hash)) { collision = true; @@ -500,8 +399,20 @@ namespace CodeHelpers << indent << "{" << newLine; for (int i = 0; i < strings.size(); ++i) - out << indent << " case 0x" << hexString8Digits (calculateHash (strings[i], hashMultiplier)) - << ": " << codeToExecute[i] << newLine; + { + StringArray matchingStrings; + matchingStrings.addTokens (strings[i], "|", ""); + + for (int j = 0; j < matchingStrings.size(); ++j) + { + out << indent << " case 0x" << hexString8Digits (calculateHash (matchingStrings[j], hashMultiplier)) << ":"; + + if (j < matchingStrings.size() - 1) + out << newLine; + } + + out << " " << codeToExecute[i] << newLine; + } out << indent << " default: break;" << newLine << indent << "}" << newLine << newLine; diff --git a/extras/Introjucer/Source/Utility/jucer_CodeHelpers.h b/extras/Introjucer/Source/Utility/jucer_CodeHelpers.h index e8468b420e..3c7bf909f3 100644 --- a/extras/Introjucer/Source/Utility/jucer_CodeHelpers.h +++ b/extras/Introjucer/Source/Utility/jucer_CodeHelpers.h @@ -2,7 +2,7 @@ ============================================================================== This file is part of the JUCE library - "Jules' Utility Class Extensions" - Copyright 2004-10 by Raw Material Software Ltd. + Copyright 2004-11 by Raw Material Software Ltd. ------------------------------------------------------------------------------ @@ -23,8 +23,8 @@ ============================================================================== */ -#ifndef __JUCER_CODEUTILITIES_H_B86AA5D2__ -#define __JUCER_CODEUTILITIES_H_B86AA5D2__ +#ifndef __JUCER_CODEHELPERS_JUCEHEADER__ +#define __JUCER_CODEHELPERS_JUCEHEADER__ //============================================================================== @@ -33,30 +33,22 @@ namespace CodeHelpers String indent (const String& code, const int numSpaces, bool indentFirstLine); String makeValidIdentifier (String s, bool capitalise, bool removeColons, bool allowTemplates); String addEscapeChars (const String& text); - String createIncludeStatement (const File& includeFile, const File& targetFile); + String createIncludeStatement (const File& includedFile, const File& targetFile); String createIncludeStatement (const String& includePath); String makeHeaderGuardName (const File& file); String makeBinaryDataIdentifierName (const File& file); String stringLiteral (const String& text); - String stringLiteralIfNotEmpty (const String& text); // if the string's empty, this returns an empty string - String boolLiteral (bool b); - String floatLiteral (float v); - String doubleLiteral (double v); String colourToCode (const Colour& col); - String justificationToCode (const Justification& justification); - String castToFloat (const String& expression); - String castToInt (const String& expression); - String fontToCode (const Font& font); String alignFunctionCallParams (const String& call, const StringArray& parameters, int maxLineLength); - void writeDataAsCppLiteral (const MemoryBlock& data, OutputStream& out); + void writeDataAsCppLiteral (const MemoryBlock& data, OutputStream& out, + bool breakAtNewLines, bool allowStringBreaks); void createStringMatcher (OutputStream& out, const String& utf8PointerVariable, const StringArray& strings, const StringArray& codeToExecute, const int indentLevel); - } -#endif // __JUCER_CODEUTILITIES_H_B86AA5D2__ +#endif // __JUCER_CODEHELPERS_JUCEHEADER__ diff --git a/extras/Introjucer/Source/Utility/jucer_Colours.h b/extras/Introjucer/Source/Utility/jucer_Colours.h index e2a75ba8c0..63f562cd0b 100644 --- a/extras/Introjucer/Source/Utility/jucer_Colours.h +++ b/extras/Introjucer/Source/Utility/jucer_Colours.h @@ -2,7 +2,7 @@ ============================================================================== This file is part of the JUCE library - "Jules' Utility Class Extensions" - Copyright 2004-10 by Raw Material Software Ltd. + Copyright 2004-11 by Raw Material Software Ltd. ------------------------------------------------------------------------------ diff --git a/extras/Introjucer/Source/Utility/jucer_FileHelpers.cpp b/extras/Introjucer/Source/Utility/jucer_FileHelpers.cpp index e8f8ba2bb0..0143b47c13 100644 --- a/extras/Introjucer/Source/Utility/jucer_FileHelpers.cpp +++ b/extras/Introjucer/Source/Utility/jucer_FileHelpers.cpp @@ -1,9 +1,24 @@ /* ============================================================================== - jucer_FileUtilities.cpp - Created: 14 May 2010 11:24:09pm - Author: Julian Storer + This file is part of the JUCE library - "Jules' Utility Class Extensions" + Copyright 2004-11 by Raw Material Software Ltd. + + ------------------------------------------------------------------------------ + + JUCE can be redistributed and/or modified under the terms of the GNU General + Public License (Version 2), as published by the Free Software Foundation. + A copy of the license is included in the JUCE distribution, or can be found + online at www.gnu.org/licenses. + + JUCE is distributed in the hope that it will be useful, but WITHOUT ANY + WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR + A PARTICULAR PURPOSE. See the GNU General Public License for more details. + + ------------------------------------------------------------------------------ + + To release a closed-source product which uses JUCE, commercial licenses are + available: visit www.rawmaterialsoftware.com/juce for more information. ============================================================================== */ @@ -15,6 +30,16 @@ //============================================================================== namespace FileHelpers { + int64 calculateMemoryHashCode (const void* data, const int numBytes) + { + int64 t = 0; + + for (int i = 0; i < numBytes; ++i) + t = t * 65599 + static_cast (data)[i]; + + return t; + } + int64 calculateStreamHashCode (InputStream& in) { int64 t = 0; @@ -45,18 +70,14 @@ namespace FileHelpers bool overwriteFileWithNewDataIfDifferent (const File& file, const void* data, int numBytes) { - if (file.getSize() == numBytes) - { - MemoryInputStream newStream (data, numBytes, false); + if (file.getSize() == numBytes + && calculateMemoryHashCode (data, numBytes) == calculateFileHashCode (file)) + return true; - if (calculateStreamHashCode (newStream) == calculateFileHashCode (file)) - return true; - } - - TemporaryFile temp (file); - - return temp.getFile().appendData (data, numBytes) - && temp.overwriteTargetFileWithTemporary(); + if (file.exists()) + return file.replaceWithData (data, numBytes); + else + return file.appendData (data, numBytes); } bool overwriteFileWithNewDataIfDifferent (const File& file, const MemoryOutputStream& newData) @@ -66,7 +87,8 @@ namespace FileHelpers bool overwriteFileWithNewDataIfDifferent (const File& file, const String& newData) { - return overwriteFileWithNewDataIfDifferent (file, newData.toUTF8(), strlen ((const char*) newData.toUTF8())); + const char* const utf8 = newData.toUTF8(); + return overwriteFileWithNewDataIfDifferent (file, utf8, strlen (utf8)); } bool containsAnyNonHiddenFiles (const File& folder) @@ -123,55 +145,4 @@ namespace FileHelpers return path1.substring (0, commonBitLength).removeCharacters ("/:").isNotEmpty(); } - - //============================================================================== - bool isJuceFolder (const File& folder) - { - return folder.getFileName().containsIgnoreCase ("juce") - && folder.getChildFile ("juce.h").exists() - && folder.getChildFile ("juce_Config.h").exists(); - } - - static File lookInFolderForJuceFolder (const File& folder) - { - for (DirectoryIterator di (folder, false, "*juce*", File::findDirectories); di.next();) - { - if (isJuceFolder (di.getFile())) - return di.getFile(); - } - - return File::nonexistent; - } - - File findParentJuceFolder (const File& file) - { - File f (file); - - while (f.exists() && f.getParentDirectory() != f) - { - if (isJuceFolder (f)) - return f; - - File found = lookInFolderForJuceFolder (f); - if (found.exists()) - return found; - - f = f.getParentDirectory(); - } - - return File::nonexistent; - } - - File findDefaultJuceFolder() - { - File f = findParentJuceFolder (File::getSpecialLocation (File::currentApplicationFile)); - - if (! f.exists()) - f = lookInFolderForJuceFolder (File::getSpecialLocation (File::userHomeDirectory)); - - if (! f.exists()) - f = lookInFolderForJuceFolder (File::getSpecialLocation (File::userDocumentsDirectory)); - - return f; - } } diff --git a/extras/Introjucer/Source/Utility/jucer_FileHelpers.h b/extras/Introjucer/Source/Utility/jucer_FileHelpers.h index 3f451d90a6..20cdbab4b7 100644 --- a/extras/Introjucer/Source/Utility/jucer_FileHelpers.h +++ b/extras/Introjucer/Source/Utility/jucer_FileHelpers.h @@ -2,7 +2,7 @@ ============================================================================== This file is part of the JUCE library - "Jules' Utility Class Extensions" - Copyright 2004-10 by Raw Material Software Ltd. + Copyright 2004-11 by Raw Material Software Ltd. ------------------------------------------------------------------------------ @@ -23,8 +23,8 @@ ============================================================================== */ -#ifndef __JUCER_FILEUTILITIES_H_EEE25EE3__ -#define __JUCER_FILEUTILITIES_H_EEE25EE3__ +#ifndef __JUCER_FILEHELPERS_JUCEHEADER__ +#define __JUCER_FILEHELPERS_JUCEHEADER__ //============================================================================== @@ -43,11 +43,6 @@ namespace FileHelpers String windowsStylePath (const String& path); bool shouldPathsBeRelative (String path1, String path2); - - //============================================================================== - bool isJuceFolder (const File& folder); - File findParentJuceFolder (const File& file); - File findDefaultJuceFolder(); } //============================================================================== @@ -83,4 +78,4 @@ private: }; -#endif // __JUCER_FILEUTILITIES_H_EEE25EE3__ +#endif // __JUCER_FILEHELPERS_JUCEHEADER__ diff --git a/extras/Introjucer/Source/Utility/jucer_JucerTreeViewBase.cpp b/extras/Introjucer/Source/Utility/jucer_JucerTreeViewBase.cpp index f5dd7b1f54..c62054dd53 100644 --- a/extras/Introjucer/Source/Utility/jucer_JucerTreeViewBase.cpp +++ b/extras/Introjucer/Source/Utility/jucer_JucerTreeViewBase.cpp @@ -2,7 +2,7 @@ ============================================================================== This file is part of the JUCE library - "Jules' Utility Class Extensions" - Copyright 2004-10 by Raw Material Software Ltd. + Copyright 2004-11 by Raw Material Software Ltd. ------------------------------------------------------------------------------ @@ -28,40 +28,20 @@ //============================================================================== JucerTreeViewBase::JucerTreeViewBase() - : numLeftHandComps (0) + : textX (0) { setLinesDrawnForSubItems (false); } -JucerTreeViewBase::~JucerTreeViewBase() -{ -} - -const Font JucerTreeViewBase::getFont() const +Font JucerTreeViewBase::getFont() const { return Font (getItemHeight() * 0.6f); } -int JucerTreeViewBase::getTextX() const -{ - return (numLeftHandComps + 1) * getItemHeight() + 8; -} - void JucerTreeViewBase::paintItem (Graphics& g, int width, int height) { if (isSelected()) g.fillAll (Colour (0x401111ee)); - - const int x = getTextX(); - - g.setColour (Colours::black); - - getIcon()->drawWithin (g, Rectangle (0.0f, 2.0f, height + 6.0f, height - 4.0f), - RectanglePlacement::centred | RectanglePlacement::onlyReduceInSize, 1.0f); - - g.setFont (getFont()); - g.setColour (isMissing() ? Colours::red : Colours::black); - g.drawFittedText (getDisplayName(), x, 0, width - x, height, Justification::centredLeft, 1, 0.8f); } void JucerTreeViewBase::paintOpenCloseButton (Graphics& g, int width, int height, bool isMouseOver) @@ -69,68 +49,119 @@ void JucerTreeViewBase::paintOpenCloseButton (Graphics& g, int width, int height Path p; if (isOpen()) - p.addTriangle (width * 0.2f, height * 0.25f, width * 0.8f, height * 0.25f, width * 0.5f, height * 0.75f); + p.addTriangle (width * 0.2f, height * 0.25f, width * 0.8f, height * 0.25f, width * 0.5f, height * 0.75f); else - p.addTriangle (width * 0.25f, height * 0.25f, width * 0.8f, height * 0.5f, width * 0.25f, height * 0.75f); + p.addTriangle (width * 0.25f, height * 0.25f, width * 0.8f, height * 0.5f, width * 0.25f, height * 0.75f); g.setColour (Colours::lightgrey); g.fillPath (p); } //============================================================================== -class TreeLeftHandButtonHolderComponent : public Component +class TreeItemComponent : public Component { public: - TreeLeftHandButtonHolderComponent (const Array& comps) + TreeItemComponent (JucerTreeViewBase& item_) + : item (item_) { - components.addArray (comps); setInterceptsMouseClicks (false, true); - for (int i = 0; i < comps.size(); ++i) - addAndMakeVisible (comps.getUnchecked(i)); + item.createLeftEdgeComponents (leftComps); + + for (int i = 0; i < leftComps.size(); ++i) + addAndMakeVisible (leftComps.getUnchecked(i)); + + addAndMakeVisible (rightHandComponent = item.createRightEdgeComponent()); + } + + void paint (Graphics& g) + { + g.setColour (Colours::black); + + const int height = getHeight(); + + item.getIcon()->drawWithin (g, Rectangle (0.0f, 2.0f, height + 6.0f, height - 4.0f), + RectanglePlacement::centred | RectanglePlacement::onlyReduceInSize, 1.0f); + + g.setFont (item.getFont()); + g.setColour (item.isMissing() ? Colours::red : Colours::black); + + const int right = rightHandComponent != nullptr ? rightHandComponent->getX() - 2 + : getWidth(); + + g.drawFittedText (item.getDisplayName(), + item.textX, 0, right - item.textX, height, Justification::centredLeft, 1, 0.8f); } void resized() { const int edge = 1; const int itemSize = getHeight() - edge * 2; + item.textX = (leftComps.size() + 1) * getHeight() + 8; - for (int i = 0; i < components.size(); ++i) - components.getUnchecked(i)->setBounds (5 + (i + 1) * getHeight(), edge, itemSize, itemSize); + for (int i = 0; i < leftComps.size(); ++i) + leftComps.getUnchecked(i)->setBounds (5 + (i + 1) * getHeight(), edge, itemSize, itemSize); + + if (rightHandComponent != nullptr) + rightHandComponent->setBounds (getWidth() - itemSize - edge, edge, itemSize, itemSize); } private: - OwnedArray components; + JucerTreeViewBase& item; + OwnedArray leftComps; + ScopedPointer rightHandComponent; }; Component* JucerTreeViewBase::createItemComponent() { - Array components; - createLeftEdgeComponents (components); - numLeftHandComps = components.size(); - - return numLeftHandComps == 0 ? 0 : new TreeLeftHandButtonHolderComponent (components); + return new TreeItemComponent (*this); } //============================================================================== +class RenameTreeItemCallback : public ModalComponentManager::Callback, + public TextEditorListener +{ +public: + RenameTreeItemCallback (JucerTreeViewBase& item_, Component& parent, const Rectangle& bounds) + : item (item_) + { + ed.setMultiLine (false, false); + ed.setPopupMenuEnabled (false); + ed.setSelectAllWhenFocused (true); + ed.setFont (item.getFont()); + ed.addListener (this); + ed.setText (item.getRenamingName()); + ed.setBounds (bounds); + + parent.addAndMakeVisible (&ed); + ed.enterModalState (true, this); + } + + void modalStateFinished (int resultCode) + { + if (resultCode != 0) + item.setName (ed.getText()); + } + + void textEditorTextChanged (TextEditor&) {} + void textEditorReturnKeyPressed (TextEditor& editor) { editor.exitModalState (1); } + void textEditorEscapeKeyPressed (TextEditor& editor) { editor.exitModalState (0); } + void textEditorFocusLost (TextEditor& editor) { editor.exitModalState (0); } + +private: + TextEditor ed; + JucerTreeViewBase& item; + + JUCE_DECLARE_NON_COPYABLE (RenameTreeItemCallback); +}; + void JucerTreeViewBase::showRenameBox() { - TextEditor ed (String::empty); - ed.setMultiLine (false, false); - ed.setPopupMenuEnabled (false); - ed.setSelectAllWhenFocused (true); - ed.setFont (getFont()); - ed.addListener (this); - ed.setText (getRenamingName()); - Rectangle r (getItemPosition (true)); - r.setLeft (r.getX() + getTextX()); + r.setLeft (r.getX() + textX); r.setHeight (getItemHeight()); - ed.setBounds (r); - getOwnerView()->addAndMakeVisible (&ed); - if (ed.runModalLoop() != 0) - setName (ed.getText()); + new RenameTreeItemCallback (*this, *getOwnerView(), r); } void JucerTreeViewBase::itemClicked (const MouseEvent& e) diff --git a/extras/Introjucer/Source/Utility/jucer_JucerTreeViewBase.h b/extras/Introjucer/Source/Utility/jucer_JucerTreeViewBase.h index c22214f462..c473d0638f 100644 --- a/extras/Introjucer/Source/Utility/jucer_JucerTreeViewBase.h +++ b/extras/Introjucer/Source/Utility/jucer_JucerTreeViewBase.h @@ -2,7 +2,7 @@ ============================================================================== This file is part of the JUCE library - "Jules' Utility Class Extensions" - Copyright 2004-10 by Raw Material Software Ltd. + Copyright 2004-11 by Raw Material Software Ltd. ------------------------------------------------------------------------------ @@ -30,16 +30,11 @@ //============================================================================== -class JucerTreeViewBase : public TreeViewItem, - public TextEditorListener +class JucerTreeViewBase : public TreeViewItem { -protected: - //============================================================================== - JucerTreeViewBase(); - ~JucerTreeViewBase(); - public: - //============================================================================== + JucerTreeViewBase(); + int getItemWidth() const { return -1; } int getItemHeight() const { return 20; } @@ -49,29 +44,38 @@ public: void itemClicked (const MouseEvent& e); //============================================================================== + virtual Font getFont() const; virtual String getRenamingName() const = 0; virtual String getDisplayName() const = 0; virtual void setName (const String& newName) = 0; virtual bool isMissing() = 0; virtual const Drawable* getIcon() const = 0; - virtual void createLeftEdgeComponents (Array& components) = 0; + virtual void createLeftEdgeComponents (OwnedArray&) {} + virtual Component* createRightEdgeComponent() { return nullptr; } virtual void showPopupMenu(); virtual void showMultiSelectionPopupMenu(); virtual void showRenameBox(); - // Text editor listener for renaming.. - void textEditorTextChanged (TextEditor& editor) {} - void textEditorReturnKeyPressed (TextEditor& editor) { editor.exitModalState (1); } - void textEditorEscapeKeyPressed (TextEditor& editor) { editor.exitModalState (0); } - void textEditorFocusLost (TextEditor& editor) { editor.exitModalState (0); } - //============================================================================== -private: - int numLeftHandComps; - const Font getFont() const; - int getTextX() const; + // To handle situations where an item gets deleted before openness is + // restored for it, this OpennessRestorer keeps only a pointer to the + // topmost tree item. + struct WholeTreeOpennessRestorer : public OpennessRestorer + { + WholeTreeOpennessRestorer (TreeViewItem& item) : OpennessRestorer (getTopLevelItem (item)) + {} + + private: + static TreeViewItem& getTopLevelItem (TreeViewItem& item) + { + TreeViewItem* const p = item.getParentItem(); + return p != nullptr ? getTopLevelItem (*p) : item; + } + }; + + int textX; }; diff --git a/extras/Introjucer/Source/Utility/jucer_MiscUtilities.cpp b/extras/Introjucer/Source/Utility/jucer_MiscUtilities.cpp index 4f023f17e6..266f696956 100644 --- a/extras/Introjucer/Source/Utility/jucer_MiscUtilities.cpp +++ b/extras/Introjucer/Source/Utility/jucer_MiscUtilities.cpp @@ -2,7 +2,7 @@ ============================================================================== This file is part of the JUCE library - "Jules' Utility Class Extensions" - Copyright 2004-10 by Raw Material Software Ltd. + Copyright 2004-11 by Raw Material Software Ltd. ------------------------------------------------------------------------------ @@ -27,15 +27,10 @@ //============================================================================== -int64 hashCode64 (const String& s) -{ - return s.hashCode64() + s.length() * s.hashCode() + s.toUpperCase().hashCode(); -} - String createAlphaNumericUID() { String uid; - static const char chars[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"; + const char chars[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"; Random r; uid << chars [r.nextInt (52)]; // make sure the first character is always a letter @@ -43,23 +38,12 @@ String createAlphaNumericUID() for (int i = 5; --i >= 0;) { r.setSeedRandomly(); - uid << chars [r.nextInt (numElementsInArray (chars))]; + uid << chars [r.nextInt (62)]; } return uid; } -String randomHexString (Random& random, int numChars) -{ - String s; - const char hexChars[] = "0123456789ABCDEF"; - - while (--numChars >= 0) - s << hexChars [random.nextInt() & 15]; - - return s; -} - String hexString8Digits (int value) { return String::toHexString (value).paddedLeft ('0', 8); @@ -67,14 +51,14 @@ String hexString8Digits (int value) String createGUID (const String& seed) { - String guid; - Random r (hashCode64 (seed + "_jucersalt")); - guid << "{" << randomHexString (r, 8); // (written as separate statements to enforce the order of execution) - guid << "-" << randomHexString (r, 4); - guid << "-" << randomHexString (r, 4); - guid << "-" << randomHexString (r, 4); - guid << "-" << randomHexString (r, 12) << "}"; - return guid; + const String hex (MD5 ((seed + "_guidsalt").toUTF8()).toHexString().toUpperCase()); + + return "{" + hex.substring (0, 8) + + "-" + hex.substring (8, 12) + + "-" + hex.substring (12, 16) + + "-" + hex.substring (16, 20) + + "-" + hex.substring (20, 32) + + "}"; } String escapeSpaces (const String& s) @@ -82,6 +66,11 @@ String escapeSpaces (const String& s) return s.replace (" ", "\\ "); } +String addQuotesIfContainsSpaces (const String& text) +{ + return (text.containsChar (' ') && ! text.isQuotedString()) ? text.quoted() : text; +} + //============================================================================== StringPairArray parsePreprocessorDefs (const String& text) { @@ -234,43 +223,34 @@ int indexOfLineStartingWith (const StringArray& lines, const String& text, int s //============================================================================== -PropertyPanelWithTooltips::PropertyPanelWithTooltips() +RolloverHelpComp::RolloverHelpComp() : lastComp (nullptr) { - addAndMakeVisible (&panel); + setInterceptsMouseClicks (false, false); startTimer (150); } -PropertyPanelWithTooltips::~PropertyPanelWithTooltips() +void RolloverHelpComp::paint (Graphics& g) { -} - -void PropertyPanelWithTooltips::paint (Graphics& g) -{ - g.setColour (Colour::greyLevel (0.15f)); - g.setFont (13.0f); + AttributedString s; + s.setJustification (Justification::centredLeft); + s.append (lastTip, Font (14.0f), Colour::greyLevel (0.15f)); TextLayout tl; - tl.appendText (lastTip, Font (14.0f)); - tl.layout (getWidth() - 10, Justification::left, true); // try to make it look nice + tl.createLayoutWithBalancedLineLengths (s, getWidth() - 10.0f); if (tl.getNumLines() > 3) - tl.layout (getWidth() - 10, Justification::left, false); // too big, so just squash it in.. + tl.createLayout (s, getWidth() - 10.0f); - tl.drawWithin (g, 5, panel.getBottom() + 2, getWidth() - 10, - getHeight() - panel.getBottom() - 4, - Justification::centredLeft); + tl.draw (g, getLocalBounds().toFloat()); } -void PropertyPanelWithTooltips::resized() -{ - panel.setBounds (0, 0, getWidth(), jmax (getHeight() - 60, proportionOfHeight (0.6f))); -} - -void PropertyPanelWithTooltips::timerCallback() +void RolloverHelpComp::timerCallback() { Component* newComp = Desktop::getInstance().getMainMouseSource().getComponentUnderMouse(); - if (newComp != nullptr && newComp->getTopLevelComponent() != getTopLevelComponent()) + if (newComp != nullptr + && (newComp->getTopLevelComponent() != getTopLevelComponent() + || newComp->isCurrentlyBlockedByAnotherModalComponent())) newComp = nullptr; if (newComp != lastComp) @@ -282,14 +262,14 @@ void PropertyPanelWithTooltips::timerCallback() if (newTip != lastTip) { lastTip = newTip; - repaint (0, panel.getBottom(), getWidth(), getHeight()); + repaint(); } } } -String PropertyPanelWithTooltips::findTip (Component* c) +String RolloverHelpComp::findTip (Component* c) { - while (c != nullptr && c != this) + while (c != nullptr) { TooltipClient* const tc = dynamic_cast (c); if (tc != nullptr) @@ -306,6 +286,20 @@ String PropertyPanelWithTooltips::findTip (Component* c) return String::empty; } +//============================================================================== +PropertyPanelWithTooltips::PropertyPanelWithTooltips() +{ + addAndMakeVisible (&panel); + addAndMakeVisible (&rollover); +} + +void PropertyPanelWithTooltips::resized() +{ + panel.setBounds (0, 0, getWidth(), jmax (getHeight() - 60, proportionOfHeight (0.6f))); + rollover.setBounds (3, panel.getBottom() - 50, getWidth() - 6, + getHeight() - (panel.getBottom() - 50) - 4); +} + //============================================================================== FloatingLabelComponent::FloatingLabelComponent() : font (10.0f) @@ -354,3 +348,92 @@ void FloatingLabelComponent::paint (Graphics& g) g.setColour (colour); glyphs.draw (g, AffineTransform::translation (1.0f, 1.0f)); } + + +//============================================================================== +class UTF8Component : public Component, + private TextEditorListener +{ +public: + UTF8Component() + : desc (String::empty, + "Type any string into the box, and it'll be shown below as a portable UTF-8 literal, ready to cut-and-paste into your source-code...") + { + setSize (400, 300); + + desc.setBounds ("8, 8, parent.width - 8, 55"); + desc.setJustificationType (Justification::centred); + addAndMakeVisible (&desc); + + userText.setMultiLine (true, true); + userText.setBounds ("8, 60, parent.width - 8, parent.height / 2 - 4"); + addAndMakeVisible (&userText); + userText.addListener (this); + + resultText.setMultiLine (true, true); + resultText.setReadOnly (true); + resultText.setBounds ("8, parent.height / 2 + 4, parent.width - 8, parent.height - 8"); + addAndMakeVisible (&resultText); + + userText.setText (getLastText()); + } + + void textEditorTextChanged (TextEditor&) + { + update(); + } + + void textEditorEscapeKeyPressed (TextEditor&) + { + getTopLevelComponent()->exitModalState (0); + } + + void update() + { + getLastText() = userText.getText(); + resultText.setText (CodeHelpers::stringLiteral (getLastText()), false); + } + +private: + Label desc; + TextEditor userText, resultText; + + String& getLastText() + { + static String t; + return t; + } +}; + +void showUTF8ToolWindow() +{ + UTF8Component comp; + DialogWindow::showModalDialog ("UTF-8 String Literal Converter", &comp, + nullptr, Colours::white, true, true); +} + +//============================================================================== +class CallOutBoxCallback : public ModalComponentManager::Callback +{ +public: + CallOutBoxCallback (Component& attachTo, Component* content_) + : content (content_), + callout (*content_, attachTo, attachTo.getTopLevelComponent()) + { + callout.setVisible (true); + callout.enterModalState (true, this); + } + + void modalStateFinished (int) {} + +private: + ScopedPointer content; + CallOutBox callout; + + JUCE_DECLARE_NON_COPYABLE (CallOutBoxCallback); +}; + +void launchAsyncCallOutBox (Component& attachTo, Component* content) +{ + new CallOutBoxCallback (attachTo, content); +} diff --git a/extras/Introjucer/Source/Utility/jucer_MiscUtilities.h b/extras/Introjucer/Source/Utility/jucer_MiscUtilities.h index c70b61b8f4..5867d9e7a6 100644 --- a/extras/Introjucer/Source/Utility/jucer_MiscUtilities.h +++ b/extras/Introjucer/Source/Utility/jucer_MiscUtilities.h @@ -2,7 +2,7 @@ ============================================================================== This file is part of the JUCE library - "Jules' Utility Class Extensions" - Copyright 2004-10 by Raw Material Software Ltd. + Copyright 2004-11 by Raw Material Software Ltd. ------------------------------------------------------------------------------ @@ -23,17 +23,14 @@ ============================================================================== */ - //============================================================================== -// String::hashCode64 actually hit some dupes, so this is a more powerful version. -int64 hashCode64 (const String& s); -String randomHexString (Random& random, int numChars); String hexString8Digits (int value); String createAlphaNumericUID(); String createGUID (const String& seed); // Turns a seed into a windows GUID String escapeSpaces (const String& text); // replaces spaces with blackslash-space +String addQuotesIfContainsSpaces (const String& text); StringPairArray parsePreprocessorDefs (const String& defs); StringPairArray mergePreprocessorDefs (StringPairArray inheritedDefs, const StringPairArray& overridingDefs); @@ -48,28 +45,68 @@ void autoScrollForMouseEvent (const MouseEvent& e, bool scrollX = true, bool scr void drawComponentPlaceholder (Graphics& g, int w, int h, const String& text); void drawRecessedShadows (Graphics& g, int w, int h, int shadowSize); +void showUTF8ToolWindow(); + +// Start a callout modally, which will delete the content comp when it's dismissed. +void launchAsyncCallOutBox (Component& attachTo, Component* content); + //============================================================================== -class PropertyPanelWithTooltips : public Component, - public Timer +class RolloverHelpComp : public Component, + private Timer { public: - PropertyPanelWithTooltips(); - ~PropertyPanelWithTooltips(); - - PropertyPanel& getPanel() noexcept { return panel; } + RolloverHelpComp(); void paint (Graphics& g); - void resized(); void timerCallback(); private: - PropertyPanel panel; - TextLayout layout; Component* lastComp; String lastTip; - String findTip (Component* c); + static String findTip (Component*); +}; + +//============================================================================== +class PropertyPanelWithTooltips : public Component +{ +public: + PropertyPanelWithTooltips(); + + void resized(); + + PropertyPanel panel; + RolloverHelpComp rollover; +}; + +//============================================================================== +class PropertyListBuilder +{ +public: + PropertyListBuilder() {} + + void add (PropertyComponent* propertyComp) + { + components.add (propertyComp); + } + + void add (PropertyComponent* propertyComp, const String& tooltip) + { + propertyComp->setTooltip (tooltip); + add (propertyComp); + } + + void setPreferredHeight (int height) + { + for (int j = components.size(); --j >= 0;) + components.getUnchecked(j)->setPreferredHeight (height); + } + + Array components; + +private: + JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (PropertyListBuilder); }; //============================================================================== @@ -79,7 +116,9 @@ public: FloatingLabelComponent(); void remove(); - void update (Component* parent, const String& text, const Colour& textColour, int x, int y, bool toRight, bool below); + void update (Component* parent, const String& text, const Colour& textColour, + int x, int y, bool toRight, bool below); + void paint (Graphics& g); private: @@ -87,3 +126,23 @@ private: Colour colour; GlyphArrangement glyphs; }; + +//============================================================================== +// A ValueSource which takes an input source, and forwards any changes in it. +// This class is a handy way to create sources which re-map a value. +class ValueSourceFilter : public Value::ValueSource, + public Value::Listener +{ +public: + ValueSourceFilter (const Value& source) : sourceValue (source) + { + sourceValue.addListener (this); + } + + void valueChanged (Value&) { sendChangeMessage (true); } + +protected: + Value sourceValue; + + JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (ValueSourceFilter); +}; diff --git a/extras/Introjucer/Source/Utility/jucer_PresetIDs.h b/extras/Introjucer/Source/Utility/jucer_PresetIDs.h index 2e8abcb2a1..f89681b48f 100644 --- a/extras/Introjucer/Source/Utility/jucer_PresetIDs.h +++ b/extras/Introjucer/Source/Utility/jucer_PresetIDs.h @@ -2,7 +2,7 @@ ============================================================================== This file is part of the JUCE library - "Jules' Utility Class Extensions" - Copyright 2004-10 by Raw Material Software Ltd. + Copyright 2004-11 by Raw Material Software Ltd. ------------------------------------------------------------------------------ @@ -23,8 +23,8 @@ ============================================================================== */ -#ifndef __JUCER_PRESETIDS_H_40E9E82E__ -#define __JUCER_PRESETIDS_H_40E9E82E__ +#ifndef __JUCER_PRESETIDS_JUCEHEADER__ +#define __JUCER_PRESETIDS_JUCEHEADER__ // Handy list of static Identifiers.. @@ -32,46 +32,15 @@ namespace Ids { #define DECLARE_ID(name) const Identifier name (#name) - DECLARE_ID (text); DECLARE_ID (name); DECLARE_ID (file); - DECLARE_ID (font); - DECLARE_ID (mode); - DECLARE_ID (type); DECLARE_ID (version); DECLARE_ID (position); DECLARE_ID (source); - DECLARE_ID (readOnly); - DECLARE_ID (editMode); - DECLARE_ID (justification); - DECLARE_ID (placement); - DECLARE_ID (items); - DECLARE_ID (editable); - DECLARE_ID (textJustification); - DECLARE_ID (unselectedText); - DECLARE_ID (noItemsText); - DECLARE_ID (min); - DECLARE_ID (max); DECLARE_ID (width); DECLARE_ID (height); DECLARE_ID (background); - DECLARE_ID (interval); - DECLARE_ID (textBoxPos); - DECLARE_ID (textBoxWidth); - DECLARE_ID (textBoxHeight); - DECLARE_ID (skew); - DECLARE_ID (scrollBarV); - DECLARE_ID (scrollBarH); - DECLARE_ID (scrollbarWidth); DECLARE_ID (initialState); - DECLARE_ID (scrollbarsShown); - DECLARE_ID (caretVisible); - DECLARE_ID (popupMenuEnabled); - DECLARE_ID (radioGroup); - DECLARE_ID (connectedLeft); - DECLARE_ID (connectedRight); - DECLARE_ID (connectedTop); - DECLARE_ID (connectedBottom); DECLARE_ID (juceFolder); DECLARE_ID (targetFolder); DECLARE_ID (vstFolder); @@ -89,11 +58,19 @@ namespace Ids DECLARE_ID (optimisation); DECLARE_ID (defines); DECLARE_ID (headerPath); + DECLARE_ID (libraryPath); DECLARE_ID (osxSDK); DECLARE_ID (osxCompatibility); DECLARE_ID (osxArchitecture); + DECLARE_ID (winArchitecture); + DECLARE_ID (winWarningLevel); + DECLARE_ID (bigIcon); + DECLARE_ID (smallIcon); DECLARE_ID (jucerVersion); DECLARE_ID (projectType); + DECLARE_ID (prebuildCommand); + DECLARE_ID (postbuildCommand); + DECLARE_ID (generateManifest); DECLARE_ID (juceLinkage); DECLARE_ID (buildVST); DECLARE_ID (bundleIdentifier); @@ -106,25 +83,26 @@ namespace Ids DECLARE_ID (createCallback); DECLARE_ID (parentClasses); DECLARE_ID (constructorParams); + DECLARE_ID (objectConstructionArgs); DECLARE_ID (memberInitialisers); - DECLARE_ID (lossOfFocusDiscardsChanges); - DECLARE_ID (url); + DECLARE_ID (canBeAggregated); DECLARE_ID (rootItemVisible); DECLARE_ID (openByDefault); DECLARE_ID (locked); - DECLARE_ID (image); DECLARE_ID (tooltip); DECLARE_ID (memberName); + DECLARE_ID (markerName); DECLARE_ID (focusOrder); DECLARE_ID (hidden); DECLARE_ID (useStdCall); + DECLARE_ID (showAllCode); + DECLARE_ID (useLocalCopy); DECLARE_ID (androidSDKPath); DECLARE_ID (androidNDKPath); DECLARE_ID (androidInternetNeeded); const Identifier class_ ("class"); - const Identifier id_ ("id"); #undef DECLARE_ID } -#endif // __JUCER_PRESETIDS_H_40E9E82E__ +#endif // __JUCER_PRESETIDS_JUCEHEADER__ diff --git a/extras/Introjucer/Source/Utility/jucer_RelativePath.h b/extras/Introjucer/Source/Utility/jucer_RelativePath.h index 4499031132..288b0c2653 100644 --- a/extras/Introjucer/Source/Utility/jucer_RelativePath.h +++ b/extras/Introjucer/Source/Utility/jucer_RelativePath.h @@ -2,7 +2,7 @@ ============================================================================== This file is part of the JUCE library - "Jules' Utility Class Extensions" - Copyright 2004-10 by Raw Material Software Ltd. + Copyright 2004-11 by Raw Material Software Ltd. ------------------------------------------------------------------------------ @@ -116,7 +116,7 @@ private: static bool isAbsolute (const String& path) { return File::isAbsolutePath (path) - || path.startsWithChar ('/') // (needed because File::isAbsolutePath will ignore forward-slashes on win32) + || path.startsWithChar ('/') // (needed because File::isAbsolutePath will ignore forward-slashes on Windows) || path.startsWithChar ('$') || path.startsWithChar ('~') || (CharacterFunctions::isLetter (path[0]) && path[1] == ':') diff --git a/extras/Introjucer/Source/Utility/jucer_StoredSettings.cpp b/extras/Introjucer/Source/Utility/jucer_StoredSettings.cpp index 15c553b061..0ee3098dfa 100644 --- a/extras/Introjucer/Source/Utility/jucer_StoredSettings.cpp +++ b/extras/Introjucer/Source/Utility/jucer_StoredSettings.cpp @@ -2,7 +2,7 @@ ============================================================================== This file is part of the JUCE library - "Jules' Utility Class Extensions" - Copyright 2004-10 by Raw Material Software Ltd. + Copyright 2004-11 by Raw Material Software Ltd. ------------------------------------------------------------------------------ @@ -115,11 +115,8 @@ void StoredSettings::flush() const int numSwatchColours = 24; for (int i = 0; i < numSwatchColours; ++i) - { - Colour defaultCol (colours [2 + i]); - swatchColours.add (Colour (props->getValue ("swatchColour" + String (i), - hexString8Digits (defaultCol.getARGB())).getHexValue32())); - } + swatchColours.add (Colour::fromString (props->getValue ("swatchColour" + String (i), + colours [2 + i].toString()))); } Array StoredSettings::getLastProjects() const @@ -143,23 +140,6 @@ void StoredSettings::setLastProjects (const Array& files) props->setValue ("lastProjects", s.joinIntoString ("|")); } -File StoredSettings::getLastKnownJuceFolder() const -{ - File defaultJuceFolder (FileHelpers::findDefaultJuceFolder()); - File f (props->getValue ("lastJuceFolder", defaultJuceFolder.getFullPathName())); - - if ((! FileHelpers::isJuceFolder (f)) && FileHelpers::isJuceFolder (defaultJuceFolder)) - f = defaultJuceFolder; - - return f; -} - -void StoredSettings::setLastKnownJuceFolder (const File& file) -{ - jassert (FileHelpers::isJuceFolder (file)); - props->setValue ("lastJuceFolder", file.getFullPathName()); -} - const StringArray& StoredSettings::getFontNames() { if (fontNames.size() == 0) diff --git a/extras/Introjucer/Source/Utility/jucer_StoredSettings.h b/extras/Introjucer/Source/Utility/jucer_StoredSettings.h index bb5061022f..bffcc22210 100644 --- a/extras/Introjucer/Source/Utility/jucer_StoredSettings.h +++ b/extras/Introjucer/Source/Utility/jucer_StoredSettings.h @@ -2,7 +2,7 @@ ============================================================================== This file is part of the JUCE library - "Jules' Utility Class Extensions" - Copyright 2004-10 by Raw Material Software Ltd. + Copyright 2004-11 by Raw Material Software Ltd. ------------------------------------------------------------------------------ @@ -29,7 +29,7 @@ //============================================================================== /** - A singleton to hold the jucer's persistent settings, and to save them in a + A singleton to hold persistent settings, and to save them in a suitable PropertiesFile. */ class StoredSettings @@ -50,9 +50,6 @@ public: Array getLastProjects() const; void setLastProjects (const Array& files); - File getLastKnownJuceFolder() const; - void setLastKnownJuceFolder (const File& file); - const StringArray& getFontNames(); //============================================================================== @@ -64,7 +61,7 @@ public: ColourSelectorWithSwatches() {} int getNumSwatches() const { return StoredSettings::getInstance()->swatchColours.size(); } - const Colour getSwatchColour (int index) const { return StoredSettings::getInstance()->swatchColours [index]; } + Colour getSwatchColour (int index) const { return StoredSettings::getInstance()->swatchColours [index]; } void setSwatchColour (int index, const Colour& newColour) const { StoredSettings::getInstance()->swatchColours.set (index, newColour); } }; diff --git a/extras/Introjucer/Source/Utility/jucer_ValueSourceHelpers.h b/extras/Introjucer/Source/Utility/jucer_ValueSourceHelpers.h index a7ea1a121b..58b8950904 100644 --- a/extras/Introjucer/Source/Utility/jucer_ValueSourceHelpers.h +++ b/extras/Introjucer/Source/Utility/jucer_ValueSourceHelpers.h @@ -2,7 +2,7 @@ ============================================================================== This file is part of the JUCE library - "Jules' Utility Class Extensions" - Copyright 2004-10 by Raw Material Software Ltd. + Copyright 2004-11 by Raw Material Software Ltd. ------------------------------------------------------------------------------ @@ -23,41 +23,34 @@ ============================================================================== */ -#ifndef __JUCER_VALUEREMAPPERSOURCE_JUCEHEADER__ -#define __JUCER_VALUEREMAPPERSOURCE_JUCEHEADER__ +#ifndef __JUCER_VALUESOURCEHELPERS_JUCEHEADER__ +#define __JUCER_VALUESOURCEHELPERS_JUCEHEADER__ //============================================================================== /** */ template -class NumericValueSource : public Value::ValueSource, - public Value::Listener +class NumericValueSource : public ValueSourceFilter { public: - NumericValueSource (const Value& sourceValue_) - : sourceValue (sourceValue_) - { - sourceValue.addListener (this); - } + NumericValueSource (const Value& source) : ValueSourceFilter (source) {} - void valueChanged (Value&) { sendChangeMessage (true); } - var getValue() const { return (Type) sourceValue.getValue(); } + var getValue() const + { + return (Type) sourceValue.getValue(); + } void setValue (const var& newValue) { - const Type newVal = (Type) newValue; + const Type newVal = static_cast (newValue); - if (newVal != (Type) getValue()) // this test is important, because if a property is missing, it won't - sourceValue = newVal; // create it (causing an unwanted undo action) when a control sets it to 0 + if (newVal != static_cast (getValue())) // this test is important, because if a property is missing, it won't + sourceValue = newVal; // create it (causing an unwanted undo action) when a control sets it to 0 } - //============================================================================== -protected: - Value sourceValue; - JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (NumericValueSource); }; -#endif // __JUCER_VALUEREMAPPERSOURCE_JUCEHEADER__ +#endif // __JUCER_VALUESOURCEHELPERS_JUCEHEADER__ diff --git a/extras/Introjucer/Source/jucer_Headers.h b/extras/Introjucer/Source/jucer_Headers.h index 446e0df52b..4fea7961b5 100644 --- a/extras/Introjucer/Source/jucer_Headers.h +++ b/extras/Introjucer/Source/jucer_Headers.h @@ -2,7 +2,7 @@ ============================================================================== This file is part of the JUCE library - "Jules' Utility Class Extensions" - Copyright 2004-10 by Raw Material Software Ltd. + Copyright 2004-11 by Raw Material Software Ltd. ------------------------------------------------------------------------------ diff --git a/extras/JuceDemo/Builds/Android/AndroidManifest.xml b/extras/JuceDemo/Builds/Android/AndroidManifest.xml index 5d647b784b..ff797b2b99 100644 --- a/extras/JuceDemo/Builds/Android/AndroidManifest.xml +++ b/extras/JuceDemo/Builds/Android/AndroidManifest.xml @@ -1,16 +1,15 @@ - - - - - - - - - - - - - - + + + + + + + + + + + + + + diff --git a/extras/JuceDemo/Builds/Android/build.properties b/extras/JuceDemo/Builds/Android/build.properties deleted file mode 100644 index d08980348c..0000000000 --- a/extras/JuceDemo/Builds/Android/build.properties +++ /dev/null @@ -1 +0,0 @@ -# This file is used to override default values used by the Ant build system. diff --git a/extras/JuceDemo/Builds/Android/build.xml b/extras/JuceDemo/Builds/Android/build.xml index 6bffadde89..8f4047f5a3 100644 --- a/extras/JuceDemo/Builds/Android/build.xml +++ b/extras/JuceDemo/Builds/Android/build.xml @@ -1,9 +1,8 @@ - - - + + @@ -18,7 +17,7 @@ - + @@ -33,5 +32,5 @@ - + diff --git a/extras/JuceDemo/Builds/Android/jni/Android.mk b/extras/JuceDemo/Builds/Android/jni/Android.mk index 930c7f3c30..534aea681f 100644 --- a/extras/JuceDemo/Builds/Android/jni/Android.mk +++ b/extras/JuceDemo/Builds/Android/jni/Android.mk @@ -1,11 +1,10 @@ -# Automatically generated makefile, created by the Jucer -# Don't edit this file! Your changes will be overwritten when you re-save the Jucer project! +# Automatically generated makefile, created by the Introjucer +# Don't edit this file! Your changes will be overwritten when you re-save the Introjucer project! LOCAL_PATH := $(call my-dir) include $(CLEAR_VARS) -LOCAL_CPP_EXTENSION := cpp LOCAL_MODULE := juce_jni LOCAL_SRC_FILES := \ ../../../Source/ApplicationStartup.cpp\ @@ -31,15 +30,27 @@ LOCAL_SRC_FILES := \ ../../../Source/demos/WebBrowserDemo.cpp\ ../../../Source/demos/WidgetsDemo.cpp\ ../../../JuceLibraryCode/BinaryData.cpp\ - ../../../JuceLibraryCode/JuceLibraryCode1.cpp\ - ../../../JuceLibraryCode/JuceLibraryCode2.cpp\ - ../../../JuceLibraryCode/JuceLibraryCode3.cpp\ - ../../../JuceLibraryCode/JuceLibraryCode4.cpp\ + ../../../../../modules/juce_audio_basics/juce_audio_basics.cpp\ + ../../../../../modules/juce_audio_devices/juce_audio_devices.cpp\ + ../../../../../modules/juce_audio_formats/juce_audio_formats.cpp\ + ../../../../../modules/juce_audio_processors/juce_audio_processors.cpp\ + ../../../../../modules/juce_audio_utils/juce_audio_utils.cpp\ + ../../../../../modules/juce_core/juce_core.cpp\ + ../../../../../modules/juce_cryptography/juce_cryptography.cpp\ + ../../../../../modules/juce_data_structures/juce_data_structures.cpp\ + ../../../../../modules/juce_events/juce_events.cpp\ + ../../../../../modules/juce_graphics/juce_graphics.cpp\ + ../../../../../modules/juce_gui_basics/juce_gui_basics.cpp\ + ../../../../../modules/juce_gui_extra/juce_gui_extra.cpp\ + ../../../../../modules/juce_opengl/juce_opengl.cpp\ + ../../../../../modules/juce_video/juce_video.cpp\ ifeq ($(CONFIG),Debug) - LOCAL_CPPFLAGS += -fsigned-char -fexceptions -frtti -g -O0 -D "JUCE_ANDROID=1" -D "DEBUG=1" -D "_DEBUG=1" -D "JUCE_UNIT_TESTS=1" -D "JUCER_ANDROID_7F0E4A25=1" + LOCAL_CPPFLAGS += -fsigned-char -fexceptions -frtti -g -I "../../JuceLibraryCode" -O0 -D "JUCE_ANDROID=1" -D "DEBUG=1" -D "_DEBUG=1" -D "JUCE_UNIT_TESTS=1" -D "JUCER_ANDROID_7F0E4A25=1" + LOCAL_LDLIBS := -lGLESv1_CM -lGLESv2 else - LOCAL_CPPFLAGS += -fsigned-char -fexceptions -frtti -Os -D "JUCE_ANDROID=1" -D "NDEBUG=1" -D "JUCE_UNIT_TESTS=1" -D "JUCER_ANDROID_7F0E4A25=1" + LOCAL_CPPFLAGS += -fsigned-char -fexceptions -frtti -I "../../JuceLibraryCode" -Os -D "JUCE_ANDROID=1" -D "NDEBUG=1" -D "JUCE_UNIT_TESTS=1" -D "JUCER_ANDROID_7F0E4A25=1" + LOCAL_LDLIBS := -lGLESv1_CM -lGLESv2 endif include $(BUILD_SHARED_LIBRARY) diff --git a/extras/JuceDemo/Builds/Android/jni/Application.mk b/extras/JuceDemo/Builds/Android/jni/Application.mk index 29d8ea0bbb..ae028cd907 100644 --- a/extras/JuceDemo/Builds/Android/jni/Application.mk +++ b/extras/JuceDemo/Builds/Android/jni/Application.mk @@ -1,5 +1,6 @@ -# Automatically generated makefile, created by the Jucer -# Don't edit this file! Your changes will be overwritten when you re-save the Jucer project! +# Automatically generated makefile, created by the Introjucer +# Don't edit this file! Your changes will be overwritten when you re-save the Introjucer project! APP_STL := gnustl_static APP_CPPFLAGS += -fsigned-char -fexceptions -frtti +APP_PLATFORM := android-7 diff --git a/extras/JuceDemo/Builds/Android/local.properties b/extras/JuceDemo/Builds/Android/local.properties index a688c88909..1d9d6c19a9 100644 --- a/extras/JuceDemo/Builds/Android/local.properties +++ b/extras/JuceDemo/Builds/Android/local.properties @@ -1,6 +1,6 @@ # This file is used to override default values used by the Ant build system. -# It is automatically generated by the Jucer - DO NOT EDIT IT or your changes will be lost!. +# It is automatically generated by the Introjucer - DO NOT EDIT IT or your changes will be lost!. -sdk.dir=${user.home}/SDKs/android-sdk-mac_x86 -ndk.dir=${user.home}/SDKs/android-ndk-r5c +sdk.dir=${user.home}/SDKs/android-sdk-macosx +ndk.dir=${user.home}/SDKs/android-ndk-r7 diff --git a/extras/JuceDemo/Builds/Android/default.properties b/extras/JuceDemo/Builds/Android/project.properties similarity index 80% rename from extras/JuceDemo/Builds/Android/default.properties rename to extras/JuceDemo/Builds/Android/project.properties index 1444d74911..9b259c744c 100644 --- a/extras/JuceDemo/Builds/Android/default.properties +++ b/extras/JuceDemo/Builds/Android/project.properties @@ -1,4 +1,5 @@ # This file is used to override default values used by the Ant build system. # It is automatically generated - DO NOT EDIT IT or your changes will be lost!. -target=android-9 +target=Google Inc.:Google APIs:7 + diff --git a/extras/JuceDemo/Builds/Android/res/drawable-hdpi/icon.png b/extras/JuceDemo/Builds/Android/res/drawable-hdpi/icon.png index 97acb16b4e..2fc5caeabb 100644 Binary files a/extras/JuceDemo/Builds/Android/res/drawable-hdpi/icon.png and b/extras/JuceDemo/Builds/Android/res/drawable-hdpi/icon.png differ diff --git a/extras/JuceDemo/Builds/Android/res/drawable-ldpi/icon.png b/extras/JuceDemo/Builds/Android/res/drawable-ldpi/icon.png index f11512f166..0fd4edc8da 100644 Binary files a/extras/JuceDemo/Builds/Android/res/drawable-ldpi/icon.png and b/extras/JuceDemo/Builds/Android/res/drawable-ldpi/icon.png differ diff --git a/extras/JuceDemo/Builds/Android/res/drawable-mdpi/icon.png b/extras/JuceDemo/Builds/Android/res/drawable-mdpi/icon.png index 7841a79ea0..75401b3792 100644 Binary files a/extras/JuceDemo/Builds/Android/res/drawable-mdpi/icon.png and b/extras/JuceDemo/Builds/Android/res/drawable-mdpi/icon.png differ diff --git a/extras/JuceDemo/Builds/Linux/Makefile b/extras/JuceDemo/Builds/Linux/Makefile index 31decfca9c..28cf3d0b92 100644 --- a/extras/JuceDemo/Builds/Linux/Makefile +++ b/extras/JuceDemo/Builds/Linux/Makefile @@ -1,5 +1,5 @@ -# Automatically generated makefile, created by the Jucer -# Don't edit this file! Your changes will be overwritten when you re-save the Jucer project! +# Automatically generated makefile, created by the Introjucer +# Don't edit this file! Your changes will be overwritten when you re-save the Introjucer project! ifndef CONFIG CONFIG=Debug @@ -17,12 +17,12 @@ ifeq ($(CONFIG),Debug) LIBDIR := build OBJDIR := build/intermediate/Debug OUTDIR := build - CPPFLAGS := $(DEPFLAGS) -D "LINUX=1" -D "DEBUG=1" -D "_DEBUG=1" -D "JUCE_UNIT_TESTS=1" -D "JUCER_LINUX_MAKE_7346DA2A=1" -I "/usr/include" -I "/usr/include/freetype2" + CPPFLAGS := $(DEPFLAGS) -D "LINUX=1" -D "DEBUG=1" -D "_DEBUG=1" -D "JUCE_UNIT_TESTS=1" -D "JUCER_LINUX_MAKE_7346DA2A=1" -I /usr/include -I /usr/include/freetype2 -I ../../JuceLibraryCode CFLAGS += $(CPPFLAGS) $(TARGET_ARCH) -g -ggdb -O0 CXXFLAGS += $(CFLAGS) - LDFLAGS += -L$(BINDIR) -L$(LIBDIR) -L"/usr/X11R6/lib/" -L"../../../../../juce/bin" -lfreetype -lpthread -lrt -lX11 -lGL -lGLU -lXinerama -lasound + LDFLAGS += -L$(BINDIR) -L$(LIBDIR) -L/usr/X11R6/lib/ -lfreetype -lpthread -lrt -lX11 -lGL -lGLU -lXinerama -lasound -lXext LDDEPS := - RESFLAGS := -D "LINUX=1" -D "DEBUG=1" -D "_DEBUG=1" -D "JUCE_UNIT_TESTS=1" -D "JUCER_LINUX_MAKE_7346DA2A=1" -I "/usr/include" -I "/usr/include/freetype2" + RESFLAGS := -D "LINUX=1" -D "DEBUG=1" -D "_DEBUG=1" -D "JUCE_UNIT_TESTS=1" -D "JUCER_LINUX_MAKE_7346DA2A=1" -I /usr/include -I /usr/include/freetype2 -I ../../JuceLibraryCode TARGET := JuceDemo BLDCMD = $(CXX) -o $(OUTDIR)/$(TARGET) $(OBJECTS) $(LDFLAGS) $(RESOURCES) $(TARGET_ARCH) endif @@ -32,12 +32,12 @@ ifeq ($(CONFIG),Release) LIBDIR := build OBJDIR := build/intermediate/Release OUTDIR := build - CPPFLAGS := $(DEPFLAGS) -D "LINUX=1" -D "NDEBUG=1" -D "JUCE_UNIT_TESTS=1" -D "JUCER_LINUX_MAKE_7346DA2A=1" -I "/usr/include" -I "/usr/include/freetype2" + CPPFLAGS := $(DEPFLAGS) -D "LINUX=1" -D "NDEBUG=1" -D "JUCE_UNIT_TESTS=1" -D "JUCER_LINUX_MAKE_7346DA2A=1" -I /usr/include -I /usr/include/freetype2 -I ../../JuceLibraryCode CFLAGS += $(CPPFLAGS) $(TARGET_ARCH) -Os CXXFLAGS += $(CFLAGS) - LDFLAGS += -L$(BINDIR) -L$(LIBDIR) -L"/usr/X11R6/lib/" -L"../../../../../juce/bin" -lfreetype -lpthread -lrt -lX11 -lGL -lGLU -lXinerama -lasound + LDFLAGS += -L$(BINDIR) -L$(LIBDIR) -L/usr/X11R6/lib/ -lfreetype -lpthread -lrt -lX11 -lGL -lGLU -lXinerama -lasound -lXext LDDEPS := - RESFLAGS := -D "LINUX=1" -D "NDEBUG=1" -D "JUCE_UNIT_TESTS=1" -D "JUCER_LINUX_MAKE_7346DA2A=1" -I "/usr/include" -I "/usr/include/freetype2" + RESFLAGS := -D "LINUX=1" -D "NDEBUG=1" -D "JUCE_UNIT_TESTS=1" -D "JUCER_LINUX_MAKE_7346DA2A=1" -I /usr/include -I /usr/include/freetype2 -I ../../JuceLibraryCode TARGET := JuceDemo BLDCMD = $(CXX) -o $(OUTDIR)/$(TARGET) $(OBJECTS) $(LDFLAGS) $(RESOURCES) $(TARGET_ARCH) endif @@ -66,10 +66,20 @@ OBJECTS := \ $(OBJDIR)/WebBrowserDemo_be24b7bf.o \ $(OBJDIR)/WidgetsDemo_9419b474.o \ $(OBJDIR)/BinaryData_ce4232d4.o \ - $(OBJDIR)/JuceLibraryCode1_682c927f.o \ - $(OBJDIR)/JuceLibraryCode2_683aaa00.o \ - $(OBJDIR)/JuceLibraryCode3_6848c181.o \ - $(OBJDIR)/JuceLibraryCode4_6856d902.o \ + $(OBJDIR)/juce_audio_basics_399a455e.o \ + $(OBJDIR)/juce_audio_devices_c1c9ba9c.o \ + $(OBJDIR)/juce_audio_formats_f04b043c.o \ + $(OBJDIR)/juce_audio_processors_eb9ae116.o \ + $(OBJDIR)/juce_audio_utils_cf18005c.o \ + $(OBJDIR)/juce_core_1ee54a40.o \ + $(OBJDIR)/juce_cryptography_3b1f489a.o \ + $(OBJDIR)/juce_data_structures_84790dfc.o \ + $(OBJDIR)/juce_events_584896b4.o \ + $(OBJDIR)/juce_graphics_f9afc18.o \ + $(OBJDIR)/juce_gui_basics_90929794.o \ + $(OBJDIR)/juce_gui_extra_b81d9e1c.o \ + $(OBJDIR)/juce_opengl_1890bee0.o \ + $(OBJDIR)/juce_video_86a19d3c.o \ .PHONY: clean @@ -201,24 +211,74 @@ $(OBJDIR)/BinaryData_ce4232d4.o: ../../JuceLibraryCode/BinaryData.cpp @echo "Compiling BinaryData.cpp" @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" -$(OBJDIR)/JuceLibraryCode1_682c927f.o: ../../JuceLibraryCode/JuceLibraryCode1.cpp +$(OBJDIR)/juce_audio_basics_399a455e.o: ../../../../modules/juce_audio_basics/juce_audio_basics.cpp -@mkdir -p $(OBJDIR) - @echo "Compiling JuceLibraryCode1.cpp" + @echo "Compiling juce_audio_basics.cpp" @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" -$(OBJDIR)/JuceLibraryCode2_683aaa00.o: ../../JuceLibraryCode/JuceLibraryCode2.cpp +$(OBJDIR)/juce_audio_devices_c1c9ba9c.o: ../../../../modules/juce_audio_devices/juce_audio_devices.cpp -@mkdir -p $(OBJDIR) - @echo "Compiling JuceLibraryCode2.cpp" + @echo "Compiling juce_audio_devices.cpp" @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" -$(OBJDIR)/JuceLibraryCode3_6848c181.o: ../../JuceLibraryCode/JuceLibraryCode3.cpp +$(OBJDIR)/juce_audio_formats_f04b043c.o: ../../../../modules/juce_audio_formats/juce_audio_formats.cpp -@mkdir -p $(OBJDIR) - @echo "Compiling JuceLibraryCode3.cpp" + @echo "Compiling juce_audio_formats.cpp" @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" -$(OBJDIR)/JuceLibraryCode4_6856d902.o: ../../JuceLibraryCode/JuceLibraryCode4.cpp +$(OBJDIR)/juce_audio_processors_eb9ae116.o: ../../../../modules/juce_audio_processors/juce_audio_processors.cpp -@mkdir -p $(OBJDIR) - @echo "Compiling JuceLibraryCode4.cpp" + @echo "Compiling juce_audio_processors.cpp" + @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" + +$(OBJDIR)/juce_audio_utils_cf18005c.o: ../../../../modules/juce_audio_utils/juce_audio_utils.cpp + -@mkdir -p $(OBJDIR) + @echo "Compiling juce_audio_utils.cpp" + @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" + +$(OBJDIR)/juce_core_1ee54a40.o: ../../../../modules/juce_core/juce_core.cpp + -@mkdir -p $(OBJDIR) + @echo "Compiling juce_core.cpp" + @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" + +$(OBJDIR)/juce_cryptography_3b1f489a.o: ../../../../modules/juce_cryptography/juce_cryptography.cpp + -@mkdir -p $(OBJDIR) + @echo "Compiling juce_cryptography.cpp" + @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" + +$(OBJDIR)/juce_data_structures_84790dfc.o: ../../../../modules/juce_data_structures/juce_data_structures.cpp + -@mkdir -p $(OBJDIR) + @echo "Compiling juce_data_structures.cpp" + @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" + +$(OBJDIR)/juce_events_584896b4.o: ../../../../modules/juce_events/juce_events.cpp + -@mkdir -p $(OBJDIR) + @echo "Compiling juce_events.cpp" + @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" + +$(OBJDIR)/juce_graphics_f9afc18.o: ../../../../modules/juce_graphics/juce_graphics.cpp + -@mkdir -p $(OBJDIR) + @echo "Compiling juce_graphics.cpp" + @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" + +$(OBJDIR)/juce_gui_basics_90929794.o: ../../../../modules/juce_gui_basics/juce_gui_basics.cpp + -@mkdir -p $(OBJDIR) + @echo "Compiling juce_gui_basics.cpp" + @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" + +$(OBJDIR)/juce_gui_extra_b81d9e1c.o: ../../../../modules/juce_gui_extra/juce_gui_extra.cpp + -@mkdir -p $(OBJDIR) + @echo "Compiling juce_gui_extra.cpp" + @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" + +$(OBJDIR)/juce_opengl_1890bee0.o: ../../../../modules/juce_opengl/juce_opengl.cpp + -@mkdir -p $(OBJDIR) + @echo "Compiling juce_opengl.cpp" + @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" + +$(OBJDIR)/juce_video_86a19d3c.o: ../../../../modules/juce_video/juce_video.cpp + -@mkdir -p $(OBJDIR) + @echo "Compiling juce_video.cpp" @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" -include $(OBJECTS:%.o=%.d) diff --git a/extras/JuceDemo/Builds/MacOSX/Icon.icns b/extras/JuceDemo/Builds/MacOSX/Icon.icns index 7763077cfb..a1d2ba8423 100644 Binary files a/extras/JuceDemo/Builds/MacOSX/Icon.icns and b/extras/JuceDemo/Builds/MacOSX/Icon.icns differ diff --git a/extras/JuceDemo/Builds/MacOSX/Juce Demo.xcodeproj/project.pbxproj b/extras/JuceDemo/Builds/MacOSX/Juce Demo.xcodeproj/project.pbxproj index 19b4118261..de98a1de91 100644 --- a/extras/JuceDemo/Builds/MacOSX/Juce Demo.xcodeproj/project.pbxproj +++ b/extras/JuceDemo/Builds/MacOSX/Juce Demo.xcodeproj/project.pbxproj @@ -3,210 +3,2035 @@ archiveVersion = 1; classes = { }; - objectVersion = 45; + objectVersion = 46; objects = { - 36AEC0EAE7AB9D061AD9EFEF = { isa = PBXBuildFile; fileRef = 7B6D428682221857EAEA1C7D; }; - DEDBEF9AC48F8AD1502B6DC2 = { isa = PBXBuildFile; fileRef = 6A7D4DC561F2DD95ABD76F0D; }; - 92A7143821252FB13891CC53 = { isa = PBXBuildFile; fileRef = 2B37CDCFCBC0AC0AEAA9A479; }; - 687BFA1946EAD55C5C39907C = { isa = PBXBuildFile; fileRef = DA3360514D221A36446DC6DE; }; - ED283D0ABEC2EC312E40C6B4 = { isa = PBXBuildFile; fileRef = 010E9F48D32EA5C5451D8086; }; - 420A9C88B711F5E4997FAAD0 = { isa = PBXBuildFile; fileRef = CB7CDD93EE1469B969AF844E; }; - 29F75103FFB220F2E10CF9A9 = { isa = PBXBuildFile; fileRef = 3CE85049C3E91E38E71FF149; }; - C1437C4A64EB72D2A86729D3 = { isa = PBXBuildFile; fileRef = 85E860BFDA9D53EF77C08873; }; - B9911F3AC6CADFB47D1EA8D7 = { isa = PBXBuildFile; fileRef = 4D3E0D18D24F78B6BDE0E5DA; }; - F1BAE9DCD179C8784FF28F8D = { isa = PBXBuildFile; fileRef = 4A96850C150C1C6D87A0D21A; }; - 452052BBDBAF17DCC06EF521 = { isa = PBXBuildFile; fileRef = E0C3359BB4B5260CEB917D46; }; - 0CFE603DE523940AF3352227 = { isa = PBXBuildFile; fileRef = 9BE978B2BDA9B7DA3BE403B4; }; - C0A3C433D146C7E1FFCADFB2 = { isa = PBXBuildFile; fileRef = 4ADECB09FD213B2E910EA229; }; - 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; }; - 940BE0338CC1FEB65B4B82E2 = { isa = PBXBuildFile; fileRef = E072353A8A1F26CFB7090905; }; - 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; }; - 7B6D428682221857EAEA1C7D = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioToolbox.framework; path = System/Library/Frameworks/AudioToolbox.framework; sourceTree = SDKROOT; }; - 6A7D4DC561F2DD95ABD76F0D = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Carbon.framework; path = System/Library/Frameworks/Carbon.framework; sourceTree = SDKROOT; }; - 2B37CDCFCBC0AC0AEAA9A479 = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = System/Library/Frameworks/Cocoa.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; }; - CB7CDD93EE1469B969AF844E = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = DiscRecording.framework; path = System/Library/Frameworks/DiscRecording.framework; sourceTree = SDKROOT; }; - 3CE85049C3E91E38E71FF149 = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = IOKit.framework; path = System/Library/Frameworks/IOKit.framework; sourceTree = SDKROOT; }; - 85E860BFDA9D53EF77C08873 = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGL.framework; path = System/Library/Frameworks/OpenGL.framework; sourceTree = SDKROOT; }; - 4D3E0D18D24F78B6BDE0E5DA = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QTKit.framework; path = System/Library/Frameworks/QTKit.framework; sourceTree = SDKROOT; }; - 4A96850C150C1C6D87A0D21A = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = System/Library/Frameworks/QuartzCore.framework; sourceTree = SDKROOT; }; - E0C3359BB4B5260CEB917D46 = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuickTime.framework; path = System/Library/Frameworks/QuickTime.framework; sourceTree = SDKROOT; }; - 9BE978B2BDA9B7DA3BE403B4 = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = WebKit.framework; path = System/Library/Frameworks/WebKit.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"; }; - 4ADECB09FD213B2E910EA229 = { isa = PBXFileReference; lastKnownFileType = file.icns; name = Icon.icns; path = Icon.icns; 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"; }; - E072353A8A1F26CFB7090905 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = DirectShowDemo.cpp; path = ../../Source/demos/DirectShowDemo.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"; }; - 3369CDF7AFD79D6F3B3744B1 = { isa = PBXFileReference; lastKnownFileType = image.png; name = "juce_icon.png"; path = "../../Binary Data/juce_icon.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"; }; - 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"; }; - A6B37799E63CCE882A3383FB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = JuceHeader.h; path = ../../JuceLibraryCode/JuceHeader.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, - E072353A8A1F26CFB7090905, - F23738E4EFD2323063F82F1C, - B7F4DAFA5F8F1FC976C8B55D, - F7620D8D567CCE463ADDE0A6, - DA3BCFCC5BF07FC689DB5C34, - D6EF70641473A3E7C0DC5168, - 3BC17D4051063C1BF66548C6, - A6FB61B33BDDB0880203370C, - 08B45C29F5EEC874E014D122, - D5F519861915C136BAA8D87A, - 402768B1A52E32348D505F18, - F2EB42A070E349D77ACF77C9, - CF7FFEAFF4F386ED4DAED523 ); name = Demos; sourceTree = ""; }; - 7B2518B268DCBBF7B74F2B1D = { isa = PBXGroup; children = ( - ACFD7F6AAFC09C234D15501D, - A869663CA0E96FE15BB42A97, - A76B69386F1F19647804510D, - 013E12213AD7B4BEB28A31BE, - 3369CDF7AFD79D6F3B3744B1, - C7327AD5191A22C1FBD4F5F9 ); name = "Binary Data"; sourceTree = ""; }; - D6A4B94A747BFCF299B17932 = { isa = PBXGroup; children = ( - 885A20D277AD743C21C822B5, - 42291DB48BF81754D90FE200, - 49138F5652E637AA67CD4B70, - 18BDC68F9701862603871A7A, - 1045A435754FDEACC6D7259C, - 7B2518B268DCBBF7B74F2B1D ); name = "Juce Demo"; sourceTree = ""; }; - 4C2E644EAC72C263D09C74BB = { isa = PBXGroup; children = ( - EE37A0ECE471A928C6170F9B, - E6EF5CE04768BA5B10050D51, - CC7EB9777A4DE3408705625C, - A6B37799E63CCE882A3383FB, - BA05C84C3258A1978AF3D357, - F42C91375F3314CA6EE65697, - 4D526A336B2E97ED42CADAD7, - 8679333E781A0A0116AE5D26 ); name = "Juce Library Code"; sourceTree = ""; }; - 019CD423F1EFF7A1A0A079DD = { isa = PBXGroup; children = ( - 1A9DEA62F6A3CD1FB5CF105B, - 4ADECB09FD213B2E910EA229 ); name = Resources; sourceTree = ""; }; - 244B9AF7D858999910FD243E = { isa = PBXGroup; children = ( - 7B6D428682221857EAEA1C7D, - 6A7D4DC561F2DD95ABD76F0D, - 2B37CDCFCBC0AC0AEAA9A479, - DA3360514D221A36446DC6DE, - 010E9F48D32EA5C5451D8086, - CB7CDD93EE1469B969AF844E, - 3CE85049C3E91E38E71FF149, - 85E860BFDA9D53EF77C08873, - 4D3E0D18D24F78B6BDE0E5DA, - 4A96850C150C1C6D87A0D21A, - E0C3359BB4B5260CEB917D46, - 9BE978B2BDA9B7DA3BE403B4 ); name = Frameworks; sourceTree = ""; }; - 3F406773369804D0FBF2789A = { isa = PBXGroup; children = ( - 39B98C60B57B831FE5215CDD ); name = Products; sourceTree = ""; }; - 1609BCDD8EC2BA2A162B68F3 = { isa = PBXGroup; children = ( - D6A4B94A747BFCF299B17932, - 4C2E644EAC72C263D09C74BB, - 019CD423F1EFF7A1A0A079DD, - 244B9AF7D858999910FD243E, - 3F406773369804D0FBF2789A ); name = Source; sourceTree = ""; }; - F46B3E8DBAFA746E04F4F62C = { isa = XCBuildConfiguration; buildSettings = { - PREBINDING = NO; - HEADER_SEARCH_PATHS = " $(inherited)"; + 0BCC52797AD97E09EA6DF0E4 = { isa = PBXBuildFile; fileRef = DEB23C98FEC261260F63B6A4; }; + 7C26A95A4D47D3456AFF77ED = { isa = PBXBuildFile; fileRef = 4E1E8D79739D5A1771F1CE96; }; + 7717E0EB94DE6020C99D29DD = { isa = PBXBuildFile; fileRef = 07FECAD8E43331B1058FABD0; }; + 4163960D3A804CB466831F16 = { isa = PBXBuildFile; fileRef = C4169C8CB5406154E9BCE2B2; }; + F544EDBF5507628552174493 = { isa = PBXBuildFile; fileRef = D45EF873A4BD7D0E56274D79; }; + 05E4BF5B924C8055524AE9C8 = { isa = PBXBuildFile; fileRef = E6448B3F03DD2B41519DF93D; }; + A6BA1ABCFD4082DE39CA569C = { isa = PBXBuildFile; fileRef = 683535B25CE57F64EC61EFD1; }; + 70E15D9B766035A214A5EBF2 = { isa = PBXBuildFile; fileRef = 1220770583209247B4A994BC; }; + B290DD7AE127F3B205E64287 = { isa = PBXBuildFile; fileRef = 10C5331E1325E856FFD8733B; }; + 87EDE18A8381271AE00E982D = { isa = PBXBuildFile; fileRef = 70350B2642B3D062D0A8D239; }; + BC729FCFEF515CAE82E43DF6 = { isa = PBXBuildFile; fileRef = 6289926B08B7CD4A990134F5; }; + FA833091C017889D43AEB5CE = { isa = PBXBuildFile; fileRef = 8A6EC99172989940C08E809D; }; + 933C39A0A20A89B767742D07 = { isa = PBXBuildFile; fileRef = 16793951B75EADE5C08FD129; }; + F7DF6AC4276AD42F4F360E37 = { isa = PBXBuildFile; fileRef = D4CA129DE8BC9F6EDC2BCAD2; }; + B99620051F4C5A2FAB1DE49C = { isa = PBXBuildFile; fileRef = 2CE3420FBFD3136621EAFB1D; }; + 49FBA0236A1917CEF50FC456 = { isa = PBXBuildFile; fileRef = D0C3588FF8EF229B8F0CBCA8; }; + F5B4E1CC211F5215D6E05B44 = { isa = PBXBuildFile; fileRef = F10EEBAD564A55F50CEE7181; }; + 6D221136E94E784E793B9CD5 = { isa = PBXBuildFile; fileRef = 200550A2DDDB012E26D6D005; }; + B43C4A8F569137053CCEAD76 = { isa = PBXBuildFile; fileRef = F87BBC8FD2374628CFBC2EA6; }; + 127ED5764EA5A3BF3CEA5BBD = { isa = PBXBuildFile; fileRef = 2275EB468CEA505ADE14C225; }; + C4FCFE5612A1ED999FB9D51D = { isa = PBXBuildFile; fileRef = 690BE5039AADEF787D6E13D9; }; + B2A1C85517169CCEBB79CB9F = { isa = PBXBuildFile; fileRef = 8F37F4E9DB8E42EDF29DE166; }; + 196F67D37488DD92EF434694 = { isa = PBXBuildFile; fileRef = 8A29D461DA6C72497B49189C; }; + BF03F7C64A1FA6A2E15A9780 = { isa = PBXBuildFile; fileRef = 3C35334FE9451182FE7EC2B8; }; + 4CA7D59ACB03776D785FEB12 = { isa = PBXBuildFile; fileRef = 3D11CF883EC31F74D97920D3; }; + 7DFFCAD7929BE7BA645C65ED = { isa = PBXBuildFile; fileRef = 73108C67E00C3C958FFD23D4; }; + BCFD0CA15F13967BF82B26A4 = { isa = PBXBuildFile; fileRef = 83D67DD10BD2ACDC0984ADCB; }; + C33DAAC97DACAEE978D635F0 = { isa = PBXBuildFile; fileRef = 877D61C08ADC5B13C2627327; }; + 4FEDD45FE6A26543E055F259 = { isa = PBXBuildFile; fileRef = 94A9A7DF00C64509E9B5A337; }; + F600FD434B52D887C1FB973D = { isa = PBXBuildFile; fileRef = 81641BC45BAA99D207B153A7; }; + 0C993072AF2728D62BF28094 = { isa = PBXBuildFile; fileRef = 5ED8A827D78184F2E01A5511; }; + 1D0E1EAD88C7EF8CBB16E841 = { isa = PBXBuildFile; fileRef = 01E2555EA1347B8C8CFC438D; }; + 85EB509411E79E3F970C9653 = { isa = PBXBuildFile; fileRef = BD69603F635BE80BC99C7865; }; + C24BF8E3142DBFD0139EFEE9 = { isa = PBXBuildFile; fileRef = C87942E350F974B22047D457; }; + BEBB1C4BA92F6D4CDE224A15 = { isa = PBXBuildFile; fileRef = 6649385F220EB0B654AB61FB; }; + 662202A6B86B11E3DBD96D58 = { isa = PBXBuildFile; fileRef = 579D22DA6ECC930E19B7104A; }; + B00C72D607AF2A98366B40DE = { isa = PBXBuildFile; fileRef = 33DAC2BB94AFCF8EB33A1417; }; + 8938D948E7A216EE7264F500 = { isa = PBXBuildFile; fileRef = 7C7834D5AB7E6656A4CECF2F; }; + BA3DAB221F557B4C346EAFCF = { isa = PBXBuildFile; fileRef = EADE149294A3A3509EC61E6B; }; + 26973D9739CE05EF7F41C687 = { isa = PBXBuildFile; fileRef = 0FCE8CD83D0FA98563EE2920; }; + 020A3C34BE41F0B9B4AC7A64 = { isa = PBXBuildFile; fileRef = 278099898E32942D72AB635A; }; + 845872D67C4313E91DCD3A8E = { isa = PBXBuildFile; fileRef = 868D4BEF6B94EB7BF659CF01; }; + 6488F374D2A9B9FEDAC40859 = { isa = PBXBuildFile; fileRef = 4FC0DDA3086EE26242655E66; }; + F72A0043671FED94178413A1 = { isa = PBXBuildFile; fileRef = 766F3BD777CA786CD6BE023E; }; + B639B9459CB9EBE2A00A37F3 = { isa = PBXBuildFile; fileRef = 890F3D7DA5BC01DACF8E5431; }; + A9BC6DEA9311B5C74977A95E = { isa = PBXBuildFile; fileRef = 575587359A2F65312CE97AC4; }; + 3FCA7FE72D0EF062CB350F88 = { isa = PBXBuildFile; fileRef = 4CE1249813E63913B15BB51E; }; + 574104B02E5C0BFCCDA099B1 = { isa = PBXBuildFile; fileRef = C2072DE0D1FF6AA90A700D25; }; + BF1DE7C7A64706C9FBD7284E = { isa = PBXBuildFile; fileRef = 9AE7533B1AD68245E130B3AC; }; + 4A61E54E2ADD5FBBB1486257 = { isa = PBXBuildFile; fileRef = 49DA3670A8CF79F133914D18; }; + 0074FA7EFC2898B71E22A945 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioTransportSource.h"; path = "../../../../modules/juce_audio_devices/sources/juce_AudioTransportSource.h"; sourceTree = "SOURCE_ROOT"; }; + 013DEB204CA02DFE8B745893 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Variant.h"; path = "../../../../modules/juce_core/containers/juce_Variant.h"; sourceTree = "SOURCE_ROOT"; }; + 014740E7C97145AFAD9BD60C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AlertWindow.cpp"; path = "../../../../modules/juce_gui_basics/windows/juce_AlertWindow.cpp"; sourceTree = "SOURCE_ROOT"; }; + 01E2555EA1347B8C8CFC438D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = ThreadingDemo.cpp; path = ../../Source/demos/ThreadingDemo.cpp; sourceTree = "SOURCE_ROOT"; }; + 0388C01D765585853A700C6A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AlertWindow.h"; path = "../../../../modules/juce_gui_basics/windows/juce_AlertWindow.h"; sourceTree = "SOURCE_ROOT"; }; + 03AB3157D77979CDD2601A86 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TextPropertyComponent.h"; path = "../../../../modules/juce_gui_basics/properties/juce_TextPropertyComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 03DA010C988E825AF3EFAE7A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Network.cpp"; path = "../../../../modules/juce_core/native/juce_win32_Network.cpp"; sourceTree = "SOURCE_ROOT"; }; + 03E820FAB7405937F26D6EF2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_KeyboardFocusTraverser.cpp"; path = "../../../../modules/juce_gui_basics/keyboard/juce_KeyboardFocusTraverser.cpp"; sourceTree = "SOURCE_ROOT"; }; + 04184D8A7003E2E77ED66CFA = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ColourGradient.cpp"; path = "../../../../modules/juce_graphics/colour/juce_ColourGradient.cpp"; sourceTree = "SOURCE_ROOT"; }; + 052964DDB569D0D8C38B89FA = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ResizableCornerComponent.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_ResizableCornerComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 0574EFED0877A72D12A472E5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileLogger.h"; path = "../../../../modules/juce_core/logging/juce_FileLogger.h"; sourceTree = "SOURCE_ROOT"; }; + 05F2CE704CA3BC807CC5E19A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_KeyPress.h"; path = "../../../../modules/juce_gui_basics/keyboard/juce_KeyPress.h"; sourceTree = "SOURCE_ROOT"; }; + 0655D6F5C85104403FC367AC = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioPluginFormatManager.cpp"; path = "../../../../modules/juce_audio_processors/format/juce_AudioPluginFormatManager.cpp"; sourceTree = "SOURCE_ROOT"; }; + 06574539E17A8703E442F691 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RelativeRectangle.cpp"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativeRectangle.cpp"; sourceTree = "SOURCE_ROOT"; }; + 06D8EAABB6D94D55189361D0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Result.cpp"; path = "../../../../modules/juce_core/misc/juce_Result.cpp"; sourceTree = "SOURCE_ROOT"; }; + 070230F8B36CFD14E7EEAD71 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ThreadPool.cpp"; path = "../../../../modules/juce_core/threads/juce_ThreadPool.cpp"; sourceTree = "SOURCE_ROOT"; }; + 07492D83B5CEED0F975EEF77 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Image.cpp"; path = "../../../../modules/juce_graphics/images/juce_Image.cpp"; sourceTree = "SOURCE_ROOT"; }; + 077C8710E1F237529330ED3B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_WaitableEvent.h"; path = "../../../../modules/juce_core/threads/juce_WaitableEvent.h"; sourceTree = "SOURCE_ROOT"; }; + 0782BB99E1CCE0474B695C7D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ApplicationCommandTarget.cpp"; path = "../../../../modules/juce_gui_basics/commands/juce_ApplicationCommandTarget.cpp"; sourceTree = "SOURCE_ROOT"; }; + 07FECAD8E43331B1058FABD0 = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = System/Library/Frameworks/Cocoa.framework; sourceTree = SDKROOT; }; + 08B1356929EB57FE6FCE238F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ModifierKeys.cpp"; path = "../../../../modules/juce_gui_basics/keyboard/juce_ModifierKeys.cpp"; sourceTree = "SOURCE_ROOT"; }; + 08DC64993F213D275B988996 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Colour.h"; path = "../../../../modules/juce_graphics/colour/juce_Colour.h"; sourceTree = "SOURCE_ROOT"; }; + 09768BD4CFA73C85F8353F3A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RelativePoint.cpp"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativePoint.cpp"; sourceTree = "SOURCE_ROOT"; }; + 0A049E4E98CA579D41D98432 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SortedSet.h"; path = "../../../../modules/juce_core/containers/juce_SortedSet.h"; sourceTree = "SOURCE_ROOT"; }; + 0B8D7873618440F42487EB7B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DropShadowEffect.cpp"; path = "../../../../modules/juce_graphics/effects/juce_DropShadowEffect.cpp"; sourceTree = "SOURCE_ROOT"; }; + 0BA047892DDF9066220EEDD2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CharPointer_UTF16.h"; path = "../../../../modules/juce_core/text/juce_CharPointer_UTF16.h"; sourceTree = "SOURCE_ROOT"; }; + 0BBEDD3E8C0C2B7C4B52016A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_Fonts.mm"; path = "../../../../modules/juce_graphics/native/juce_mac_Fonts.mm"; sourceTree = "SOURCE_ROOT"; }; + 0C4CA33345C6952BC8409D71 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ActionListener.h"; path = "../../../../modules/juce_events/broadcasters/juce_ActionListener.h"; sourceTree = "SOURCE_ROOT"; }; + 0C7631EB40FF52D74D3D0A8D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileListComponent.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileListComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 0D244B27274E1E7AB434C32B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioThumbnail.cpp"; path = "../../../../modules/juce_audio_utils/gui/juce_AudioThumbnail.cpp"; sourceTree = "SOURCE_ROOT"; }; + 0D2F4EE7A540CC2AAFD301E4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Misc.cpp"; path = "../../../../modules/juce_core/native/juce_android_Misc.cpp"; sourceTree = "SOURCE_ROOT"; }; + 0D59D15FB8BC9FE203586FB3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioSubsectionReader.cpp"; path = "../../../../modules/juce_audio_formats/format/juce_AudioSubsectionReader.cpp"; sourceTree = "SOURCE_ROOT"; }; + 0DFB01AAFD08E7BAD09DDAA2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CoreAudioFormat.h"; path = "../../../../modules/juce_audio_formats/codecs/juce_CoreAudioFormat.h"; sourceTree = "SOURCE_ROOT"; }; + 0E0F146C817BAD44A024ECC7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ToggleButton.h"; path = "../../../../modules/juce_gui_basics/buttons/juce_ToggleButton.h"; sourceTree = "SOURCE_ROOT"; }; + 0E74D38CAF5F8C914132F4D5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_BubbleMessageComponent.cpp"; path = "../../../../modules/juce_gui_extra/misc/juce_BubbleMessageComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 0EA9280C282850BAB49C1696 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ToolbarItemComponent.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_ToolbarItemComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 0EC1E7F1AE41C81E1EA23B2E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TabbedComponent.h"; path = "../../../../modules/juce_gui_basics/layout/juce_TabbedComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 0F77650615781AFD4374443B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_data_structures.h"; path = "../../../../modules/juce_data_structures/juce_data_structures.h"; sourceTree = "SOURCE_ROOT"; }; + 0FCE8CD83D0FA98563EE2920 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_audio_processors.mm"; path = "../../../../modules/juce_audio_processors/juce_audio_processors.mm"; sourceTree = "SOURCE_ROOT"; }; + 1007D3CD4E3D162CCE176520 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_LocalisedStrings.cpp"; path = "../../../../modules/juce_core/text/juce_LocalisedStrings.cpp"; sourceTree = "SOURCE_ROOT"; }; + 10152F168CB3E2039DF18EA8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ToolbarItemComponent.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_ToolbarItemComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 102DDBEEEAD7EE71450C1EB9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_HashMap.h"; path = "../../../../modules/juce_core/containers/juce_HashMap.h"; sourceTree = "SOURCE_ROOT"; }; + 105A6621F66CC8034DC59C9A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Path.cpp"; path = "../../../../modules/juce_graphics/geometry/juce_Path.cpp"; sourceTree = "SOURCE_ROOT"; }; + 106B20CB3C94A1E72B19A7F7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_SystemStats.cpp"; path = "../../../../modules/juce_core/native/juce_win32_SystemStats.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1089C7A1FF43033FDA63F711 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Rectangle.h"; path = "../../../../modules/juce_graphics/geometry/juce_Rectangle.h"; sourceTree = "SOURCE_ROOT"; }; + 108D97ACAEDE5A8DF0A483B7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GroupComponent.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_GroupComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 10C0D0A587B834EA781EF5D5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ElementComparator.h"; path = "../../../../modules/juce_core/containers/juce_ElementComparator.h"; sourceTree = "SOURCE_ROOT"; }; + 10C5331E1325E856FFD8733B = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QTKit.framework; path = System/Library/Frameworks/QTKit.framework; sourceTree = SDKROOT; }; + 1118BAEA98C38755FEB9E274 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CustomTypeface.h"; path = "../../../../modules/juce_graphics/fonts/juce_CustomTypeface.h"; sourceTree = "SOURCE_ROOT"; }; + 1139AACAD8CE6CD6E9A770B6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_NamedValueSet.h"; path = "../../../../modules/juce_core/containers/juce_NamedValueSet.h"; sourceTree = "SOURCE_ROOT"; }; + 114E68D51824D42B0FFE9651 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_InterprocessConnectionServer.cpp"; path = "../../../../modules/juce_events/interprocess/juce_InterprocessConnectionServer.cpp"; sourceTree = "SOURCE_ROOT"; }; + 11545F94DD1628DE57CB7768 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CaretComponent.h"; path = "../../../../modules/juce_gui_basics/keyboard/juce_CaretComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 119712DC26D0E95E209E85BB = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ResizableWindow.cpp"; path = "../../../../modules/juce_gui_basics/windows/juce_ResizableWindow.cpp"; sourceTree = "SOURCE_ROOT"; }; + 11B4C67851A83C42B8AC00C0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FillType.cpp"; path = "../../../../modules/juce_graphics/colour/juce_FillType.cpp"; sourceTree = "SOURCE_ROOT"; }; + 11E6C0893A679EAD806DA5C2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_CoreAudioFormat.cpp"; path = "../../../../modules/juce_audio_formats/codecs/juce_CoreAudioFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1220770583209247B4A994BC = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGL.framework; path = System/Library/Frameworks/OpenGL.framework; sourceTree = SDKROOT; }; + 122C499E8D63BC4F91ACC7B6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DrawableImage.h"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawableImage.h"; sourceTree = "SOURCE_ROOT"; }; + 1264CE16C2930583C8AB553D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AiffAudioFormat.cpp"; path = "../../../../modules/juce_audio_formats/codecs/juce_AiffAudioFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; + 129BC61A6A0478DC45B5F8E1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ScopedPointer.h"; path = "../../../../modules/juce_core/memory/juce_ScopedPointer.h"; sourceTree = "SOURCE_ROOT"; }; + 12B4120D10259DF8461D689F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ReadWriteLock.cpp"; path = "../../../../modules/juce_core/threads/juce_ReadWriteLock.cpp"; sourceTree = "SOURCE_ROOT"; }; + 12B479E0CD2AAE105820B20D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DrawableRectangle.cpp"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawableRectangle.cpp"; sourceTree = "SOURCE_ROOT"; }; + 12B9DB1413B7647920B53C07 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioFormatReaderSource.h"; path = "../../../../modules/juce_audio_formats/format/juce_AudioFormatReaderSource.h"; sourceTree = "SOURCE_ROOT"; }; + 12C5FC07F64317F5CF1063A3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_GlowEffect.h"; path = "../../../../modules/juce_graphics/effects/juce_GlowEffect.h"; sourceTree = "SOURCE_ROOT"; }; + 12DD0DF90EEEBCE88873C8B1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RelativeCoordinatePositioner.h"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativeCoordinatePositioner.h"; sourceTree = "SOURCE_ROOT"; }; + 12EE1FB670B7894E873E9A57 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BorderSize.h"; path = "../../../../modules/juce_graphics/geometry/juce_BorderSize.h"; sourceTree = "SOURCE_ROOT"; }; + 1375CAA34ECE0B3B292EEF0E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Justification.h"; path = "../../../../modules/juce_graphics/placement/juce_Justification.h"; sourceTree = "SOURCE_ROOT"; }; + 137FD6DAC3FF840EBABD78E1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_UndoManager.cpp"; path = "../../../../modules/juce_data_structures/undomanager/juce_UndoManager.cpp"; sourceTree = "SOURCE_ROOT"; }; + 13C15669B35168563D72F6F8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioDataConverters.cpp"; path = "../../../../modules/juce_audio_basics/buffers/juce_AudioDataConverters.cpp"; sourceTree = "SOURCE_ROOT"; }; + 14105A8032081F6FC44F7F0B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_SplashScreen.cpp"; path = "../../../../modules/juce_gui_extra/misc/juce_SplashScreen.cpp"; sourceTree = "SOURCE_ROOT"; }; + 147A045E381AE58EC0C54984 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_WebBrowserComponent.mm"; path = "../../../../modules/juce_gui_extra/native/juce_mac_WebBrowserComponent.mm"; sourceTree = "SOURCE_ROOT"; }; + 148C8FE6639F6CDF0E92235D = { isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = Info.plist; path = Info.plist; sourceTree = "SOURCE_ROOT"; }; + 149369775B267A04F9B0ACAE = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_ALSA.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_linux_ALSA.cpp"; sourceTree = "SOURCE_ROOT"; }; + 156E421F5B0D6CAD8D415F53 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DrawableRectangle.h"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawableRectangle.h"; sourceTree = "SOURCE_ROOT"; }; + 1580FF065A04106DBBA8F475 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_QuickTimeMovieComponent.mm"; path = "../../../../modules/juce_video/native/juce_mac_QuickTimeMovieComponent.mm"; sourceTree = "SOURCE_ROOT"; }; + 15B78E8E81D489F2711FDFBE = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_UnitTest.cpp"; path = "../../../../modules/juce_core/unit_tests/juce_UnitTest.cpp"; sourceTree = "SOURCE_ROOT"; }; + 15DD1FC7780F48C6DFF56321 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CodeDocument.h"; path = "../../../../modules/juce_gui_extra/code_editor/juce_CodeDocument.h"; sourceTree = "SOURCE_ROOT"; }; + 16793951B75EADE5C08FD129 = { isa = PBXFileReference; lastKnownFileType = file.icns; name = Icon.icns; path = Icon.icns; sourceTree = "SOURCE_ROOT"; }; + 16A6895439607DD8E651BA87 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ByteOrder.h"; path = "../../../../modules/juce_core/memory/juce_ByteOrder.h"; sourceTree = "SOURCE_ROOT"; }; + 171777847EB6194910E9CFEC = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TableHeaderComponent.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_TableHeaderComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 17422D876DAAF091ED089B8D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OpenGLImage.h"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLImage.h"; sourceTree = "SOURCE_ROOT"; }; + 1798F0BC1F2B2DF2F13193AB = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_SystemStats.cpp"; path = "../../../../modules/juce_core/system/juce_SystemStats.cpp"; sourceTree = "SOURCE_ROOT"; }; + 18666AEC1FCCE5D1514EB1FD = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_KeyListener.cpp"; path = "../../../../modules/juce_gui_basics/keyboard/juce_KeyListener.cpp"; sourceTree = "SOURCE_ROOT"; }; + 18D1181C39F5A59423AC7A3E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Initialisation.h"; path = "../../../../modules/juce_gui_basics/application/juce_Initialisation.h"; sourceTree = "SOURCE_ROOT"; }; + 18E9157D37A11EDBDA35131A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_File.h"; path = "../../../../modules/juce_core/files/juce_File.h"; sourceTree = "SOURCE_ROOT"; }; + 195326647ACE1A61018358BC = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ImageButton.h"; path = "../../../../modules/juce_gui_basics/buttons/juce_ImageButton.h"; sourceTree = "SOURCE_ROOT"; }; + 19789C9C8EDD3CC9F37592C3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Thread.cpp"; path = "../../../../modules/juce_core/threads/juce_Thread.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1A03C9B88919CA79D176E738 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_audio_basics.h"; path = "../../../../modules/juce_audio_basics/juce_audio_basics.h"; sourceTree = "SOURCE_ROOT"; }; + 1A5382EC797EF333806B5AFC = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioFormatManager.cpp"; path = "../../../../modules/juce_audio_formats/format/juce_AudioFormatManager.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1A642D2FFD6CB47C8634337B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ToggleButton.cpp"; path = "../../../../modules/juce_gui_basics/buttons/juce_ToggleButton.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1A9B80E0518B9AA9C34D5804 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileFilter.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileFilter.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1A9EC07147DD48C0D68BF304 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Viewport.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_Viewport.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1B3C2797B04E0FC6699DFDF0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Windowing.cpp"; path = "../../../../modules/juce_gui_basics/native/juce_android_Windowing.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1BDF3CAE40B1FDD559BC3DD3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_InterprocessConnection.h"; path = "../../../../modules/juce_events/interprocess/juce_InterprocessConnection.h"; sourceTree = "SOURCE_ROOT"; }; + 1C36F82D875B81C26A5752AF = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioPluginFormat.cpp"; path = "../../../../modules/juce_audio_processors/format/juce_AudioPluginFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1CCB7B18759F7CEBB065C31E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AppleRemote.h"; path = "../../../../modules/juce_gui_extra/misc/juce_AppleRemote.h"; sourceTree = "SOURCE_ROOT"; }; + 1D0DD674EEEF98B1E1B8D8D8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileListComponent.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileListComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1D3DA514A7B46A2A32A32060 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MidiKeyboardComponent.cpp"; path = "../../../../modules/juce_audio_utils/gui/juce_MidiKeyboardComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1DFE892B4249D1DA3549F13E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MemoryInputStream.h"; path = "../../../../modules/juce_core/streams/juce_MemoryInputStream.h"; sourceTree = "SOURCE_ROOT"; }; + 1E868017015269856168EBA1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_NSViewComponent.h"; path = "../../../../modules/juce_gui_extra/embedding/juce_NSViewComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 1EA77055DF14613DD32065F3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ApplicationProperties.h"; path = "../../../../modules/juce_data_structures/app_properties/juce_ApplicationProperties.h"; sourceTree = "SOURCE_ROOT"; }; + 1EC913A06CFCE35C9AE2AD29 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AudioDemoRecordPage.h; path = ../../Source/demos/AudioDemoRecordPage.h; sourceTree = "SOURCE_ROOT"; }; + 1F7DFE97A858AACDAF9EBB7D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiMessageSequence.h"; path = "../../../../modules/juce_audio_basics/midi/juce_MidiMessageSequence.h"; sourceTree = "SOURCE_ROOT"; }; + 1FC2BD9784C0FCB1D259C006 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_CaretComponent.cpp"; path = "../../../../modules/juce_gui_basics/keyboard/juce_CaretComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1FD483D22D49AB7C716008DC = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_win32_ComSmartPtr.h"; path = "../../../../modules/juce_core/native/juce_win32_ComSmartPtr.h"; sourceTree = "SOURCE_ROOT"; }; + 200550A2DDDB012E26D6D005 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = AudioDemoRecordPage.cpp; path = ../../Source/demos/AudioDemoRecordPage.cpp; sourceTree = "SOURCE_ROOT"; }; + 20149C04068D071819A7BAFD = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_XmlElement.h"; path = "../../../../modules/juce_core/xml/juce_XmlElement.h"; sourceTree = "SOURCE_ROOT"; }; + 20C67AA68186D267436E7F39 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PlatformDefs.h"; path = "../../../../modules/juce_core/system/juce_PlatformDefs.h"; sourceTree = "SOURCE_ROOT"; }; + 20D1EA31FD53A558EBD278B5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BigInteger.h"; path = "../../../../modules/juce_core/maths/juce_BigInteger.h"; sourceTree = "SOURCE_ROOT"; }; + 20E63E36AE128883F4144BC3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_KeyPressMappingSet.cpp"; path = "../../../../modules/juce_gui_basics/commands/juce_KeyPressMappingSet.cpp"; sourceTree = "SOURCE_ROOT"; }; + 21605BADE3692FBBAE44F961 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiFile.h"; path = "../../../../modules/juce_audio_basics/midi/juce_MidiFile.h"; sourceTree = "SOURCE_ROOT"; }; + 2173828BA5C245AE8C598C6F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_InputStream.cpp"; path = "../../../../modules/juce_core/streams/juce_InputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2184D5F7212394F4BC1C3B45 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_opengl.h"; path = "../../../../modules/juce_opengl/juce_opengl.h"; sourceTree = "SOURCE_ROOT"; }; + 21F1833EDC766935B1CBD2D5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_EdgeTable.cpp"; path = "../../../../modules/juce_graphics/geometry/juce_EdgeTable.cpp"; sourceTree = "SOURCE_ROOT"; }; + 22132E527A92309318A2D572 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ApplicationBase.cpp"; path = "../../../../modules/juce_events/messages/juce_ApplicationBase.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2275EB468CEA505ADE14C225 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = AudioDemoSynthPage.cpp; path = ../../Source/demos/AudioDemoSynthPage.cpp; sourceTree = "SOURCE_ROOT"; }; + 22A86C5C4967A5844323F7BA = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DialogWindow.cpp"; path = "../../../../modules/juce_gui_basics/windows/juce_DialogWindow.cpp"; sourceTree = "SOURCE_ROOT"; }; + 22C2C932398DC1EFE0880A9A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_OpenGLComponent.cpp"; path = "../../../../modules/juce_opengl/native/juce_android_OpenGLComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 22CD1BF5E83A216A0D18260D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MultiTouchMapper.h"; path = "../../../../modules/juce_gui_basics/native/juce_MultiTouchMapper.h"; sourceTree = "SOURCE_ROOT"; }; + 22DA9E57AAA25391C7D1FBC6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_MessageManager.mm"; path = "../../../../modules/juce_events/native/juce_mac_MessageManager.mm"; sourceTree = "SOURCE_ROOT"; }; + 2302DFDF103BE152232EA767 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DynamicObject.h"; path = "../../../../modules/juce_core/containers/juce_DynamicObject.h"; sourceTree = "SOURCE_ROOT"; }; + 23189A59169BC89E95A4A496 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ComponentBoundsConstrainer.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_ComponentBoundsConstrainer.cpp"; sourceTree = "SOURCE_ROOT"; }; + 235894AFDA79AF1644B3A217 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioPluginFormatManager.h"; path = "../../../../modules/juce_audio_processors/format/juce_AudioPluginFormatManager.h"; sourceTree = "SOURCE_ROOT"; }; + 247646A6A435A3BDDEA602EE = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_Network.mm"; path = "../../../../modules/juce_core/native/juce_mac_Network.mm"; sourceTree = "SOURCE_ROOT"; }; + 24EF2357DEC8017E6EEC7F93 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ImageCache.h"; path = "../../../../modules/juce_graphics/images/juce_ImageCache.h"; sourceTree = "SOURCE_ROOT"; }; + 24F057BF79A4723C521BBEE4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PropertiesFile.cpp"; path = "../../../../modules/juce_data_structures/app_properties/juce_PropertiesFile.cpp"; sourceTree = "SOURCE_ROOT"; }; + 258AC1AA4F4459F9CF99944D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Value.h"; path = "../../../../modules/juce_data_structures/values/juce_Value.h"; sourceTree = "SOURCE_ROOT"; }; + 2590DCE65DE2323D9EF77214 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OwnedArray.h"; path = "../../../../modules/juce_core/containers/juce_OwnedArray.h"; sourceTree = "SOURCE_ROOT"; }; + 2597ED98D3C16A7EEF1FBFFD = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_osx_ObjCHelpers.h"; path = "../../../../modules/juce_core/native/juce_osx_ObjCHelpers.h"; sourceTree = "SOURCE_ROOT"; }; + 25FECE7ACACB29E1725A6A17 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioFormatReader.cpp"; path = "../../../../modules/juce_audio_formats/format/juce_AudioFormatReader.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2649F70294DB168919CBCAD3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RenderingHelpers.h"; path = "../../../../modules/juce_graphics/native/juce_RenderingHelpers.h"; sourceTree = "SOURCE_ROOT"; }; + 2666A5013948E2EAD29458C1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Expression.cpp"; path = "../../../../modules/juce_core/maths/juce_Expression.cpp"; sourceTree = "SOURCE_ROOT"; }; + 26B73C77D47B146F92BEA265 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DrawableText.h"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawableText.h"; sourceTree = "SOURCE_ROOT"; }; + 2708E4F2F73D88F73D8E54D0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DrawablePath.cpp"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawablePath.cpp"; sourceTree = "SOURCE_ROOT"; }; + 278099898E32942D72AB635A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_audio_utils.mm"; path = "../../../../modules/juce_audio_utils/juce_audio_utils.mm"; sourceTree = "SOURCE_ROOT"; }; + 278FB432DCB9A4F9DBEB64DD = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_core.h"; path = "../../../../modules/juce_core/juce_core.h"; sourceTree = "SOURCE_ROOT"; }; + 27C340103177AB0848BCCC66 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AffineTransform.cpp"; path = "../../../../modules/juce_graphics/geometry/juce_AffineTransform.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2820D74789660269902DB93A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Uuid.cpp"; path = "../../../../modules/juce_core/misc/juce_Uuid.cpp"; sourceTree = "SOURCE_ROOT"; }; + 282C1DA3A161FEF2AD6F94A6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CodeTokeniser.h"; path = "../../../../modules/juce_gui_extra/code_editor/juce_CodeTokeniser.h"; sourceTree = "SOURCE_ROOT"; }; + 2954678FE7AB78F318FBD4F7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileInputStream.h"; path = "../../../../modules/juce_core/files/juce_FileInputStream.h"; sourceTree = "SOURCE_ROOT"; }; + 295A470694011EBCA802822B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OpenGLGraphicsContext.cpp"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLGraphicsContext.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2968B26144E09D6A6659E739 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DirectShowComponent.h"; path = "../../../../modules/juce_video/playback/juce_DirectShowComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 2A835EF38887CAB750B49AC6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RelativePointPath.h"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativePointPath.h"; sourceTree = "SOURCE_ROOT"; }; + 2ACD67859FBC33EB743708CB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TextButton.h"; path = "../../../../modules/juce_gui_basics/buttons/juce_TextButton.h"; sourceTree = "SOURCE_ROOT"; }; + 2AE22D5AB8B2D3C381FBAC81 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_JackAudio.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_linux_JackAudio.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2B3A770317B04AAF24C28EF5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_StretchableLayoutManager.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_StretchableLayoutManager.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2C2B87B06DED242E1C4FE878 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_JPEGLoader.cpp"; path = "../../../../modules/juce_graphics/image_formats/juce_JPEGLoader.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2C3298EC4F4D0DA7A6C4291F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Typeface.cpp"; path = "../../../../modules/juce_graphics/fonts/juce_Typeface.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2C48ED514887D2F673B3B1BC = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AudioDemoLatencyPage.h; path = ../../Source/demos/AudioDemoLatencyPage.h; sourceTree = "SOURCE_ROOT"; }; + 2C516889F34A72150CDB6ADF = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PluginListComponent.cpp"; path = "../../../../modules/juce_audio_processors/scanning/juce_PluginListComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2C610D8010FF4A396101E2DD = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_InputStream.h"; path = "../../../../modules/juce_core/streams/juce_InputStream.h"; sourceTree = "SOURCE_ROOT"; }; + 2C712E1519F7D4410288D35D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AiffAudioFormat.h"; path = "../../../../modules/juce_audio_formats/codecs/juce_AiffAudioFormat.h"; sourceTree = "SOURCE_ROOT"; }; + 2C80ACF1A94F47BA05FA687C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OutputStream.h"; path = "../../../../modules/juce_core/streams/juce_OutputStream.h"; sourceTree = "SOURCE_ROOT"; }; + 2CD9DB6EFEAE8354A089CAC9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_IIRFilter.cpp"; path = "../../../../modules/juce_audio_basics/effects/juce_IIRFilter.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2CE3420FBFD3136621EAFB1D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = MainDemoWindow.cpp; path = ../../Source/MainDemoWindow.cpp; sourceTree = "SOURCE_ROOT"; }; + 2CED94801F5481AE15648BF9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ColourSelector.cpp"; path = "../../../../modules/juce_gui_extra/misc/juce_ColourSelector.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2D529158434D415C56A07479 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TemporaryFile.cpp"; path = "../../../../modules/juce_core/files/juce_TemporaryFile.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2D5379BEA988458161F6694A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_XmlElement.cpp"; path = "../../../../modules/juce_core/xml/juce_XmlElement.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2D585CE2B407C9072D9A22C7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Image.h"; path = "../../../../modules/juce_graphics/images/juce_Image.h"; sourceTree = "SOURCE_ROOT"; }; + 2D6DAE85F0A729F1FF761DC7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PropertyPanel.cpp"; path = "../../../../modules/juce_gui_basics/properties/juce_PropertyPanel.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2D93002DFF33B8BC3AD37520 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MACAddress.h"; path = "../../../../modules/juce_core/network/juce_MACAddress.h"; sourceTree = "SOURCE_ROOT"; }; + 2D9920BFC36E621CBDCE2381 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Primes.cpp"; path = "../../../../modules/juce_cryptography/encryption/juce_Primes.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2DC1A9FFE2FADDF611409D6B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Reverb.h"; path = "../../../../modules/juce_audio_basics/effects/juce_Reverb.h"; sourceTree = "SOURCE_ROOT"; }; + 2E02355C7790F4B6EA0CC56E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_ios_UIViewComponent.mm"; path = "../../../../modules/juce_gui_extra/native/juce_ios_UIViewComponent.mm"; sourceTree = "SOURCE_ROOT"; }; + 2E3C193C1C7AF236B10F01A6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PropertiesFile.h"; path = "../../../../modules/juce_data_structures/app_properties/juce_PropertiesFile.h"; sourceTree = "SOURCE_ROOT"; }; + 2E7A4C5E41B3BEBC444B5935 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ActiveXControlComponent.h"; path = "../../../../modules/juce_gui_extra/embedding/juce_ActiveXControlComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 2F7FE4AA919A66D5EFF65A86 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_LookAndFeel.cpp"; path = "../../../../modules/juce_gui_basics/lookandfeel/juce_LookAndFeel.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2FD23F0C1CE490858228180E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RecentlyOpenedFilesList.cpp"; path = "../../../../modules/juce_gui_extra/misc/juce_RecentlyOpenedFilesList.cpp"; sourceTree = "SOURCE_ROOT"; }; + 30416A5D76A365DDC434987E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ComponentDragger.cpp"; path = "../../../../modules/juce_gui_basics/mouse/juce_ComponentDragger.cpp"; sourceTree = "SOURCE_ROOT"; }; + 3090FB05992F02292F415E33 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DragAndDropContainer.cpp"; path = "../../../../modules/juce_gui_basics/mouse/juce_DragAndDropContainer.cpp"; sourceTree = "SOURCE_ROOT"; }; + 30B5F2ABF28FD59FA7DA26E2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_JSON.cpp"; path = "../../../../modules/juce_core/json/juce_JSON.cpp"; sourceTree = "SOURCE_ROOT"; }; + 30B7393EE0006E9958AD82C3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BlowFish.h"; path = "../../../../modules/juce_cryptography/encryption/juce_BlowFish.h"; sourceTree = "SOURCE_ROOT"; }; + 30F6134D7A127DFE9D1ADA20 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PerformanceCounter.h"; path = "../../../../modules/juce_core/time/juce_PerformanceCounter.h"; sourceTree = "SOURCE_ROOT"; }; + 3121916B396AFD0027FF1926 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_KeyPressMappingSet.h"; path = "../../../../modules/juce_gui_basics/commands/juce_KeyPressMappingSet.h"; sourceTree = "SOURCE_ROOT"; }; + 31C1E172911A4C726A85EA02 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PropertyComponent.h"; path = "../../../../modules/juce_gui_basics/properties/juce_PropertyComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 327D715A8B4C164B34398221 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Sampler.h"; path = "../../../../modules/juce_audio_formats/sampler/juce_Sampler.h"; sourceTree = "SOURCE_ROOT"; }; + 329BD0A0243005D36A444135 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LookAndFeel.h"; path = "../../../../modules/juce_gui_basics/lookandfeel/juce_LookAndFeel.h"; sourceTree = "SOURCE_ROOT"; }; + 32B277F17C4052C6E4C70859 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Value.cpp"; path = "../../../../modules/juce_data_structures/values/juce_Value.cpp"; sourceTree = "SOURCE_ROOT"; }; + 32F08660DB00B6BD5C905FE3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Path.h"; path = "../../../../modules/juce_graphics/geometry/juce_Path.h"; sourceTree = "SOURCE_ROOT"; }; + 32FBF4064072FEB06C6677C2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BufferedInputStream.h"; path = "../../../../modules/juce_core/streams/juce_BufferedInputStream.h"; sourceTree = "SOURCE_ROOT"; }; + 32FF688C9F64E07EA3917682 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_StretchableObjectResizer.h"; path = "../../../../modules/juce_gui_basics/layout/juce_StretchableObjectResizer.h"; sourceTree = "SOURCE_ROOT"; }; + 3342B88619BAEFF4C41078FD = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_SystemTrayIcon.cpp"; path = "../../../../modules/juce_gui_extra/native/juce_win32_SystemTrayIcon.cpp"; sourceTree = "SOURCE_ROOT"; }; + 33A84E7FDD64568649CC89BF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Point.h"; path = "../../../../modules/juce_graphics/geometry/juce_Point.h"; sourceTree = "SOURCE_ROOT"; }; + 33DAC2BB94AFCF8EB33A1417 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_audio_basics.mm"; path = "../../../../modules/juce_audio_basics/juce_audio_basics.mm"; sourceTree = "SOURCE_ROOT"; }; + 33E3113EE5BF74F269FAD5EB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RecentlyOpenedFilesList.h"; path = "../../../../modules/juce_gui_extra/misc/juce_RecentlyOpenedFilesList.h"; sourceTree = "SOURCE_ROOT"; }; + 33F9348D753D148E82519067 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioProcessorPlayer.cpp"; path = "../../../../modules/juce_audio_utils/players/juce_AudioProcessorPlayer.cpp"; sourceTree = "SOURCE_ROOT"; }; + 3421ADCAF375264A71E5AF07 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ComponentPeer.h"; path = "../../../../modules/juce_gui_basics/windows/juce_ComponentPeer.h"; sourceTree = "SOURCE_ROOT"; }; + 3477734262959639DF347D4E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiMessageCollector.h"; path = "../../../../modules/juce_audio_devices/midi_io/juce_MidiMessageCollector.h"; sourceTree = "SOURCE_ROOT"; }; + 348002712045A8515DB393E4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DirectoryContentsList.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_DirectoryContentsList.cpp"; sourceTree = "SOURCE_ROOT"; }; + 34ADBF046976CA8A3932B5EF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_String.h"; path = "../../../../modules/juce_core/text/juce_String.h"; sourceTree = "SOURCE_ROOT"; }; + 34BEABBC39678C06EA3BB307 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PropertyPanel.h"; path = "../../../../modules/juce_gui_basics/properties/juce_PropertyPanel.h"; sourceTree = "SOURCE_ROOT"; }; + 34E9DFB552CA9B8FEF8DEF1D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TableListBox.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_TableListBox.cpp"; sourceTree = "SOURCE_ROOT"; }; + 350624CF3CD7DCA1E0313D3E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioPluginFormat.h"; path = "../../../../modules/juce_audio_processors/format/juce_AudioPluginFormat.h"; sourceTree = "SOURCE_ROOT"; }; + 3507A95E429F11E5549286CB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PopupMenu.h"; path = "../../../../modules/juce_gui_basics/menus/juce_PopupMenu.h"; sourceTree = "SOURCE_ROOT"; }; + 35089DB1D126566F2B5DD724 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DrawablePath.h"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawablePath.h"; sourceTree = "SOURCE_ROOT"; }; + 353DB618823D6BC97E0986C1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Network.cpp"; path = "../../../../modules/juce_core/native/juce_linux_Network.cpp"; sourceTree = "SOURCE_ROOT"; }; + 3543594CCB08E22D1EA8D2C7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TextEditor.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_TextEditor.h"; sourceTree = "SOURCE_ROOT"; }; + 359C09D53EFC4C1C557BC959 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FlacAudioFormat.cpp"; path = "../../../../modules/juce_audio_formats/codecs/juce_FlacAudioFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; + 35CA3E9AEE7BC7C005653A25 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AudioDemoTabComponent.h; path = ../../Source/demos/AudioDemoTabComponent.h; sourceTree = "SOURCE_ROOT"; }; + 35F42453CF2745BD254BC71E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ThreadWithProgressWindow.cpp"; path = "../../../../modules/juce_gui_basics/windows/juce_ThreadWithProgressWindow.cpp"; sourceTree = "SOURCE_ROOT"; }; + 35FF3215D779C44F5B715702 = { isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_events/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + 36DD59799C3C4279B18DEAD3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_CustomTypeface.cpp"; path = "../../../../modules/juce_graphics/fonts/juce_CustomTypeface.cpp"; sourceTree = "SOURCE_ROOT"; }; + 36EFC492079F0B7F4A1CB099 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SliderPropertyComponent.h"; path = "../../../../modules/juce_gui_basics/properties/juce_SliderPropertyComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 3706A97B56FC6BFF72B700DF = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GraphicsContext.cpp"; path = "../../../../modules/juce_graphics/contexts/juce_GraphicsContext.cpp"; sourceTree = "SOURCE_ROOT"; }; + 3710B4143BD286E576B66C15 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioProcessor.h"; path = "../../../../modules/juce_audio_processors/processors/juce_AudioProcessor.h"; sourceTree = "SOURCE_ROOT"; }; + 373EBC4E488B3EF8A0A72CAF = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_GraphicsContext.cpp"; path = "../../../../modules/juce_graphics/native/juce_android_GraphicsContext.cpp"; sourceTree = "SOURCE_ROOT"; }; + 3786A46162305EA0B75F35E8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GZIPCompressorOutputStream.cpp"; path = "../../../../modules/juce_core/zip/juce_GZIPCompressorOutputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; + 37E2F2B9AFE2B6C1AA51A11A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioDeviceManager.cpp"; path = "../../../../modules/juce_audio_devices/audio_io/juce_AudioDeviceManager.cpp"; sourceTree = "SOURCE_ROOT"; }; + 38022D22AE783472BA32DF82 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioThumbnail.h"; path = "../../../../modules/juce_audio_utils/gui/juce_AudioThumbnail.h"; sourceTree = "SOURCE_ROOT"; }; + 3817585001205632BF471A05 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiInput.h"; path = "../../../../modules/juce_audio_devices/midi_io/juce_MidiInput.h"; sourceTree = "SOURCE_ROOT"; }; + 3839556028D5A749F48340FE = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ToolbarItemPalette.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_ToolbarItemPalette.cpp"; sourceTree = "SOURCE_ROOT"; }; + 385368D4C7693E8903E0C345 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LowLevelGraphicsSoftwareRenderer.h"; path = "../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsSoftwareRenderer.h"; sourceTree = "SOURCE_ROOT"; }; + 38B68694E6EDD6C29D1198D7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AudioDemoSetupPage.h; path = ../../Source/demos/AudioDemoSetupPage.h; sourceTree = "SOURCE_ROOT"; }; + 38CDDFDC6697BF7BCFC8DAFC = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioFormatWriter.cpp"; path = "../../../../modules/juce_audio_formats/format/juce_AudioFormatWriter.cpp"; sourceTree = "SOURCE_ROOT"; }; + 38E0255E6BB9600DEECD39F8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RectangleList.h"; path = "../../../../modules/juce_graphics/geometry/juce_RectangleList.h"; sourceTree = "SOURCE_ROOT"; }; + 393CDFCFA0358C689E5A3691 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Logger.h"; path = "../../../../modules/juce_core/logging/juce_Logger.h"; sourceTree = "SOURCE_ROOT"; }; + 39DADA0AAD7468C535ECD5A2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AttributedString.cpp"; path = "../../../../modules/juce_graphics/fonts/juce_AttributedString.cpp"; sourceTree = "SOURCE_ROOT"; }; + 39ED2CD3C8A17DF313A0838B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_XmlDocument.h"; path = "../../../../modules/juce_core/xml/juce_XmlDocument.h"; sourceTree = "SOURCE_ROOT"; }; + 3A3C8D765CD02651E2C39102 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MidiKeyboardState.cpp"; path = "../../../../modules/juce_audio_basics/midi/juce_MidiKeyboardState.cpp"; sourceTree = "SOURCE_ROOT"; }; + 3A7C2EA6B6C8E00BBE6A29B1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AttributedString.h"; path = "../../../../modules/juce_graphics/fonts/juce_AttributedString.h"; sourceTree = "SOURCE_ROOT"; }; + 3A9AB41831037CF68FF5719F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ComboBox.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_ComboBox.cpp"; sourceTree = "SOURCE_ROOT"; }; + 3ADBF520293DBBCE5A605902 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DropShadower.h"; path = "../../../../modules/juce_gui_basics/misc/juce_DropShadower.h"; sourceTree = "SOURCE_ROOT"; }; + 3AEC36869846977B0C09A881 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CharPointer_ASCII.h"; path = "../../../../modules/juce_core/text/juce_CharPointer_ASCII.h"; sourceTree = "SOURCE_ROOT"; }; + 3B32FA1EF99322D3DED5F162 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_GroupComponent.h"; path = "../../../../modules/juce_gui_basics/layout/juce_GroupComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 3B583D35FAD0DE89F00F17C0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Application.h"; path = "../../../../modules/juce_gui_basics/application/juce_Application.h"; sourceTree = "SOURCE_ROOT"; }; + 3C35334FE9451182FE7EC2B8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = DirectShowDemo.cpp; path = ../../Source/demos/DirectShowDemo.cpp; sourceTree = "SOURCE_ROOT"; }; + 3C97F910F4E20FC15DB607F0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_InputSource.h"; path = "../../../../modules/juce_core/streams/juce_InputSource.h"; sourceTree = "SOURCE_ROOT"; }; + 3CF7FB16E7DFE7EC2636A45D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PopupMenu.cpp"; path = "../../../../modules/juce_gui_basics/menus/juce_PopupMenu.cpp"; sourceTree = "SOURCE_ROOT"; }; + 3CFD018C7CC9E7B8E1E6232D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_WebBrowserComponent.cpp"; path = "../../../../modules/juce_gui_extra/native/juce_linux_WebBrowserComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 3CFE82D0B21D705C8C6DFCF9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PropertySet.h"; path = "../../../../modules/juce_core/containers/juce_PropertySet.h"; sourceTree = "SOURCE_ROOT"; }; + 3D01072645251F386FCE636B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PathIterator.h"; path = "../../../../modules/juce_graphics/geometry/juce_PathIterator.h"; sourceTree = "SOURCE_ROOT"; }; + 3D11CF883EC31F74D97920D3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = DragAndDropDemo.cpp; path = ../../Source/demos/DragAndDropDemo.cpp; sourceTree = "SOURCE_ROOT"; }; + 3D47500F131A273A8C29AAE2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MidiMessageCollector.cpp"; path = "../../../../modules/juce_audio_devices/midi_io/juce_MidiMessageCollector.cpp"; sourceTree = "SOURCE_ROOT"; }; + 3D5DB29BE2D59A93B5516273 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_WebBrowserComponent.cpp"; path = "../../../../modules/juce_gui_extra/native/juce_android_WebBrowserComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 3D8ED4E2F2DFEBA891A4BD7B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Windowing.cpp"; path = "../../../../modules/juce_gui_basics/native/juce_linux_Windowing.cpp"; sourceTree = "SOURCE_ROOT"; }; + 3D9E23A71CF1E3FB6D532753 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_SubregionStream.cpp"; path = "../../../../modules/juce_core/streams/juce_SubregionStream.cpp"; sourceTree = "SOURCE_ROOT"; }; + 3DF6629A4DD77B71A5F855CC = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MP3AudioFormat.cpp"; path = "../../../../modules/juce_audio_formats/codecs/juce_MP3AudioFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; + 3E11497CB4E6589C8A10E740 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_FileChooser.cpp"; path = "../../../../modules/juce_gui_basics/native/juce_win32_FileChooser.cpp"; sourceTree = "SOURCE_ROOT"; }; + 3E49B797A7DF7B2F596F330B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_UnitTest.h"; path = "../../../../modules/juce_core/unit_tests/juce_UnitTest.h"; sourceTree = "SOURCE_ROOT"; }; + 3EBBCD2A01201C7CC76389CC = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MidiBuffer.cpp"; path = "../../../../modules/juce_audio_basics/midi/juce_MidiBuffer.cpp"; sourceTree = "SOURCE_ROOT"; }; + 3EE0B72A06759B14B7FC6836 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DropShadowEffect.h"; path = "../../../../modules/juce_graphics/effects/juce_DropShadowEffect.h"; sourceTree = "SOURCE_ROOT"; }; + 3F273BE94572DB6E747B0793 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_events.h"; path = "../../../../modules/juce_events/juce_events.h"; sourceTree = "SOURCE_ROOT"; }; + 3F4889BE2D946E79745601A6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LADSPAPluginFormat.h"; path = "../../../../modules/juce_audio_processors/format_types/juce_LADSPAPluginFormat.h"; sourceTree = "SOURCE_ROOT"; }; + 3FA49B24986D1DA7CFA612ED = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ProgressBar.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_ProgressBar.cpp"; sourceTree = "SOURCE_ROOT"; }; + 3FCF8E2901F23E806122E4AA = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ApplicationCommandID.h"; path = "../../../../modules/juce_gui_basics/commands/juce_ApplicationCommandID.h"; sourceTree = "SOURCE_ROOT"; }; + 3FFA55DA900886D84F5A0A7A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioSource.h"; path = "../../../../modules/juce_audio_basics/sources/juce_AudioSource.h"; sourceTree = "SOURCE_ROOT"; }; + 405F91E957609744EB0FC5C8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_audio_formats.h"; path = "../../../../modules/juce_audio_formats/juce_audio_formats.h"; sourceTree = "SOURCE_ROOT"; }; + 419A5345B4F9B977B7C1FD2E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ZipFile.cpp"; path = "../../../../modules/juce_core/zip/juce_ZipFile.cpp"; sourceTree = "SOURCE_ROOT"; }; + 422D4D8EE3470F57D56064AA = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ComponentMovementWatcher.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_ComponentMovementWatcher.cpp"; sourceTree = "SOURCE_ROOT"; }; + 4242718AFF89762AA5CEC247 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DragAndDropTarget.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_DragAndDropTarget.h"; sourceTree = "SOURCE_ROOT"; }; + 4275F414173638509F56E09A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_QuickTimeAudioFormat.h"; path = "../../../../modules/juce_audio_formats/codecs/juce_QuickTimeAudioFormat.h"; sourceTree = "SOURCE_ROOT"; }; + 42B89D48E9FB252F1BC3796A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = JuceHeader.h; path = ../../JuceLibraryCode/JuceHeader.h; sourceTree = "SOURCE_ROOT"; }; + 4306A3B2696CCE1D811D8C53 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FlacAudioFormat.h"; path = "../../../../modules/juce_audio_formats/codecs/juce_FlacAudioFormat.h"; sourceTree = "SOURCE_ROOT"; }; + 431B8B4CCA364880B507DD4E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_SVGParser.cpp"; path = "../../../../modules/juce_gui_basics/drawables/juce_SVGParser.cpp"; sourceTree = "SOURCE_ROOT"; }; + 43A4661DD876DBD6A6E1F5C7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ApplicationCommandManager.cpp"; path = "../../../../modules/juce_gui_basics/commands/juce_ApplicationCommandManager.cpp"; sourceTree = "SOURCE_ROOT"; }; + 43D8FB16F1DE9F159C7A2F71 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ArrowButton.cpp"; path = "../../../../modules/juce_gui_basics/buttons/juce_ArrowButton.cpp"; sourceTree = "SOURCE_ROOT"; }; + 43E4604C39E9A992216F6B98 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OpenGLFrameBuffer.h"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLFrameBuffer.h"; sourceTree = "SOURCE_ROOT"; }; + 441F40BFFD11D433F2FED531 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CodeEditorComponent.h"; path = "../../../../modules/juce_gui_extra/code_editor/juce_CodeEditorComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 44616895C0F4219D47AC7FEB = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MidiFile.cpp"; path = "../../../../modules/juce_audio_basics/midi/juce_MidiFile.cpp"; sourceTree = "SOURCE_ROOT"; }; + 447E2F5BA5478E8233CE1A1B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiDataConcatenator.h"; path = "../../../../modules/juce_audio_devices/native/juce_MidiDataConcatenator.h"; sourceTree = "SOURCE_ROOT"; }; + 450F0C2A16431DBBAE50520E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_WindowsMediaAudioFormat.cpp"; path = "../../../../modules/juce_audio_formats/codecs/juce_WindowsMediaAudioFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; + 451D484BE77922E33CA60DFE = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_KnownPluginList.h"; path = "../../../../modules/juce_audio_processors/scanning/juce_KnownPluginList.h"; sourceTree = "SOURCE_ROOT"; }; + 4604F166A3FC6187967E2053 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Messaging.cpp"; path = "../../../../modules/juce_events/native/juce_linux_Messaging.cpp"; sourceTree = "SOURCE_ROOT"; }; + 462F0D225347C4FDB943324C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ChoicePropertyComponent.h"; path = "../../../../modules/juce_gui_basics/properties/juce_ChoicePropertyComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 467EAE3A087BEF2C56EE3FF7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DragAndDropContainer.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_DragAndDropContainer.h"; sourceTree = "SOURCE_ROOT"; }; + 476F1E00A832948D22B468C1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SystemTrayIconComponent.h"; path = "../../../../modules/juce_gui_extra/misc/juce_SystemTrayIconComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 47B161CB864B6C499DE64416 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_NamedValueSet.cpp"; path = "../../../../modules/juce_core/containers/juce_NamedValueSet.cpp"; sourceTree = "SOURCE_ROOT"; }; + 47BD3D6D5AC81F74179942FA = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DrawableComposite.h"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawableComposite.h"; sourceTree = "SOURCE_ROOT"; }; + 47C2B600A45FAC095669304F = { isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_video/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + 47DAE660790C8E8CE96A63FB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_GZIPDecompressorInputStream.h"; path = "../../../../modules/juce_core/zip/juce_GZIPDecompressorInputStream.h"; sourceTree = "SOURCE_ROOT"; }; + 47F1E35082ED332567F9C727 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioDeviceSelectorComponent.h"; path = "../../../../modules/juce_audio_utils/gui/juce_AudioDeviceSelectorComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 4871179A9D7239EDE34B33BE = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_MainMenu.mm"; path = "../../../../modules/juce_gui_basics/native/juce_mac_MainMenu.mm"; sourceTree = "SOURCE_ROOT"; }; + 48DCD395FA50217F557ECC2A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OptionalScopedPointer.h"; path = "../../../../modules/juce_core/memory/juce_OptionalScopedPointer.h"; sourceTree = "SOURCE_ROOT"; }; + 4916E6E942FDEA8E55DEEF64 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucedemo_headers.h"; path = "../../Source/jucedemo_headers.h"; sourceTree = "SOURCE_ROOT"; }; + 49AD4268C6B2CF4E12806E56 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_CameraDevice.cpp"; path = "../../../../modules/juce_video/native/juce_android_CameraDevice.cpp"; sourceTree = "SOURCE_ROOT"; }; + 49C7D1146BE928E7FEF48A72 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_NewLine.h"; path = "../../../../modules/juce_core/text/juce_NewLine.h"; sourceTree = "SOURCE_ROOT"; }; + 49DA3670A8CF79F133914D18 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_video.mm"; path = "../../../../modules/juce_video/juce_video.mm"; sourceTree = "SOURCE_ROOT"; }; + 49FED6A86A4F78CDB60CBC99 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ButtonPropertyComponent.h"; path = "../../../../modules/juce_gui_basics/properties/juce_ButtonPropertyComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 4A9E5DAE13069017FB5CAEB2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioCDReader.h"; path = "../../../../modules/juce_audio_devices/audio_cd/juce_AudioCDReader.h"; sourceTree = "SOURCE_ROOT"; }; + 4AC80644D0D73A0FF8656CAB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CharPointer_UTF32.h"; path = "../../../../modules/juce_core/text/juce_CharPointer_UTF32.h"; sourceTree = "SOURCE_ROOT"; }; + 4ADF2B4274758FA3F435D6DB = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_DirectShowComponent.cpp"; path = "../../../../modules/juce_video/native/juce_win32_DirectShowComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 4AF29A63EBF9E0693BF999C4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Singleton.h"; path = "../../../../modules/juce_core/memory/juce_Singleton.h"; sourceTree = "SOURCE_ROOT"; }; + 4B86077AAC3D6C026B3E31CE = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioFormat.h"; path = "../../../../modules/juce_audio_formats/format/juce_AudioFormat.h"; sourceTree = "SOURCE_ROOT"; }; + 4CC2034DFB9E19F81E590E6E = { isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_audio_devices/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + 4CE1249813E63913B15BB51E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_gui_basics.mm"; path = "../../../../modules/juce_gui_basics/juce_gui_basics.mm"; sourceTree = "SOURCE_ROOT"; }; + 4CE8628F7CAB483AFAFA01FD = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_BooleanPropertyComponent.cpp"; path = "../../../../modules/juce_gui_basics/properties/juce_BooleanPropertyComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 4CFB262AA9778621B8B33A7D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OpenGLTexture.h"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLTexture.h"; sourceTree = "SOURCE_ROOT"; }; + 4D050E552CC0A82297D0AC86 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Button.cpp"; path = "../../../../modules/juce_gui_basics/buttons/juce_Button.cpp"; sourceTree = "SOURCE_ROOT"; }; + 4D2697EB7DF6121A0037A399 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_UndoableAction.h"; path = "../../../../modules/juce_data_structures/undomanager/juce_UndoableAction.h"; sourceTree = "SOURCE_ROOT"; }; + 4DCA9EF26A5F2CCF0B74F8A1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_ASIO.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_win32_ASIO.cpp"; sourceTree = "SOURCE_ROOT"; }; + 4DE313B7586BAFF5E9BB0506 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TopLevelWindow.cpp"; path = "../../../../modules/juce_gui_basics/windows/juce_TopLevelWindow.cpp"; sourceTree = "SOURCE_ROOT"; }; + 4E0A38A8008E55C09BFBA199 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = BinaryData.h; path = ../../JuceLibraryCode/BinaryData.h; sourceTree = "SOURCE_ROOT"; }; + 4E1E8D79739D5A1771F1CE96 = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Carbon.framework; path = System/Library/Frameworks/Carbon.framework; sourceTree = SDKROOT; }; + 4E6F438BDC119B89C9518531 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_posix_NamedPipe.cpp"; path = "../../../../modules/juce_core/native/juce_posix_NamedPipe.cpp"; sourceTree = "SOURCE_ROOT"; }; + 4E8A36ACA8A867C7511B280A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TreeView.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_TreeView.cpp"; sourceTree = "SOURCE_ROOT"; }; + 4EB06BB3A534C3865CD7A8B8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AppConfig.h; path = ../../JuceLibraryCode/AppConfig.h; sourceTree = "SOURCE_ROOT"; }; + 4EB13D757A756408053DBB79 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_String.cpp"; path = "../../../../modules/juce_core/text/juce_String.cpp"; sourceTree = "SOURCE_ROOT"; }; + 4EC68506861032FFD4B848DB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TemporaryFile.h"; path = "../../../../modules/juce_core/files/juce_TemporaryFile.h"; sourceTree = "SOURCE_ROOT"; }; + 4EC77B02BE7457DE877E332B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ComponentAnimator.h"; path = "../../../../modules/juce_gui_basics/layout/juce_ComponentAnimator.h"; sourceTree = "SOURCE_ROOT"; }; + 4F2F636FB9416BFBB1FF2473 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Fonts.cpp"; path = "../../../../modules/juce_graphics/native/juce_android_Fonts.cpp"; sourceTree = "SOURCE_ROOT"; }; + 4F802BD98072EA49F7F4FE4A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OpenGLComponent.cpp"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 4F854124B48F6358A992D164 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ListBox.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_ListBox.h"; sourceTree = "SOURCE_ROOT"; }; + 4FC0DDA3086EE26242655E66 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_cryptography.mm"; path = "../../../../modules/juce_cryptography/juce_cryptography.mm"; sourceTree = "SOURCE_ROOT"; }; + 5010D82E6ED57F014D8E88E3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileTreeComponent.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileTreeComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 5031A666D462F64BF254F81C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiMessage.h"; path = "../../../../modules/juce_audio_basics/midi/juce_MidiMessage.h"; sourceTree = "SOURCE_ROOT"; }; + 503F07193B665711417DF1FC = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Drawable.h"; path = "../../../../modules/juce_gui_basics/drawables/juce_Drawable.h"; sourceTree = "SOURCE_ROOT"; }; + 508E1F2760E66BD1A73C235E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_GraphicsContext.h"; path = "../../../../modules/juce_graphics/contexts/juce_GraphicsContext.h"; sourceTree = "SOURCE_ROOT"; }; + 5092F31788400A172E319CCB = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_CodeDocument.cpp"; path = "../../../../modules/juce_gui_extra/code_editor/juce_CodeDocument.cpp"; sourceTree = "SOURCE_ROOT"; }; + 50A201CF006DD19F648C429D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MarkerList.h"; path = "../../../../modules/juce_gui_basics/positioning/juce_MarkerList.h"; sourceTree = "SOURCE_ROOT"; }; + 51A580427D01D51811D5F1D0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ChildProcess.h"; path = "../../../../modules/juce_core/threads/juce_ChildProcess.h"; sourceTree = "SOURCE_ROOT"; }; + 51AFA9AA1B3094239580A0B6 = { isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_data_structures/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + 52CAE85DCE0FA2692B8A85C7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MessageListener.cpp"; path = "../../../../modules/juce_events/messages/juce_MessageListener.cpp"; sourceTree = "SOURCE_ROOT"; }; + 52D9F5FD82C858FE4F134773 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Windowing.cpp"; path = "../../../../modules/juce_gui_basics/native/juce_win32_Windowing.cpp"; sourceTree = "SOURCE_ROOT"; }; + 52FD39B0A762C353D2FB09BC = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MenuBarModel.cpp"; path = "../../../../modules/juce_gui_basics/menus/juce_MenuBarModel.cpp"; sourceTree = "SOURCE_ROOT"; }; + 53A5227FBB8C0DD8F4442599 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RelativePointPath.cpp"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativePointPath.cpp"; sourceTree = "SOURCE_ROOT"; }; + 53B187F6CFBDE72F4CEFE845 = { isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_opengl/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + 5435804E495A87442FD7A6F0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ComponentPeer.cpp"; path = "../../../../modules/juce_gui_basics/windows/juce_ComponentPeer.cpp"; sourceTree = "SOURCE_ROOT"; }; + 549BE844954C5CD52D46FBD1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Uuid.h"; path = "../../../../modules/juce_core/misc/juce_Uuid.h"; sourceTree = "SOURCE_ROOT"; }; + 54B6F856BA80756C0C139326 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_AudioCDReader.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_win32_AudioCDReader.cpp"; sourceTree = "SOURCE_ROOT"; }; + 554399057C06249E6FAB9E20 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RelativeTime.cpp"; path = "../../../../modules/juce_core/time/juce_RelativeTime.cpp"; sourceTree = "SOURCE_ROOT"; }; + 55DDAA81843B00449145EA5A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MessageManager.cpp"; path = "../../../../modules/juce_events/messages/juce_MessageManager.cpp"; sourceTree = "SOURCE_ROOT"; }; + 56CA808B4610A5C34730B4D2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MessageListener.h"; path = "../../../../modules/juce_events/messages/juce_MessageListener.h"; sourceTree = "SOURCE_ROOT"; }; + 56D3242C281C2F19A2A6E81B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MenuBarComponent.cpp"; path = "../../../../modules/juce_gui_basics/menus/juce_MenuBarComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 570C04EF3724ADC8B2EF0563 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Midi.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_android_Midi.cpp"; sourceTree = "SOURCE_ROOT"; }; + 5712EB90A8B51DBBC4E19A39 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Direct2DGraphicsContext.cpp"; path = "../../../../modules/juce_graphics/native/juce_win32_Direct2DGraphicsContext.cpp"; sourceTree = "SOURCE_ROOT"; }; + 5725CB557A7D55CA59E18324 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DirectoryContentsDisplayComponent.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_DirectoryContentsDisplayComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 5741A7FD2C785C3F65377A45 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_AudioCDReader.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_linux_AudioCDReader.cpp"; sourceTree = "SOURCE_ROOT"; }; + 574BCE46C31D810F694B0651 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileChooserDialogBox.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileChooserDialogBox.cpp"; sourceTree = "SOURCE_ROOT"; }; + 575587359A2F65312CE97AC4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_graphics.mm"; path = "../../../../modules/juce_graphics/juce_graphics.mm"; sourceTree = "SOURCE_ROOT"; }; + 5786364EC4C531CDE41BDCEA = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OpenGLContext.cpp"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLContext.cpp"; sourceTree = "SOURCE_ROOT"; }; + 579D22DA6ECC930E19B7104A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = BinaryData.cpp; path = ../../JuceLibraryCode/BinaryData.cpp; sourceTree = "SOURCE_ROOT"; }; + 58061ADC1867C814A334D49D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileInputStream.cpp"; path = "../../../../modules/juce_core/files/juce_FileInputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; + 58864C3D7F369EBE01E42C5C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OpenGLShaderProgram.cpp"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLShaderProgram.cpp"; sourceTree = "SOURCE_ROOT"; }; + 591E3F5832C08B0841971B01 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PropertyComponent.cpp"; path = "../../../../modules/juce_gui_basics/properties/juce_PropertyComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 59591325C73706DB6BD2C887 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FilePreviewComponent.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FilePreviewComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 5996F037CD5993251871573E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DrawableShape.cpp"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawableShape.cpp"; sourceTree = "SOURCE_ROOT"; }; + 59A4C185020F908DEB4A844C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_File.cpp"; path = "../../../../modules/juce_core/files/juce_File.cpp"; sourceTree = "SOURCE_ROOT"; }; + 59F616BB319A05A8E93B89FD = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AsyncUpdater.h"; path = "../../../../modules/juce_events/broadcasters/juce_AsyncUpdater.h"; sourceTree = "SOURCE_ROOT"; }; + 5ACCDDBA02C73CE15D6532E9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_Windowing.mm"; path = "../../../../modules/juce_gui_basics/native/juce_mac_Windowing.mm"; sourceTree = "SOURCE_ROOT"; }; + 5AE8CCF926E311A0A7088E5B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioProcessorListener.h"; path = "../../../../modules/juce_audio_processors/processors/juce_AudioProcessorListener.h"; sourceTree = "SOURCE_ROOT"; }; + 5BC78223CF42F85D660DA536 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_URL.cpp"; path = "../../../../modules/juce_core/network/juce_URL.cpp"; sourceTree = "SOURCE_ROOT"; }; + 5CABE190EBD0F4EEB763114A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Fonts.cpp"; path = "../../../../modules/juce_graphics/native/juce_win32_Fonts.cpp"; sourceTree = "SOURCE_ROOT"; }; + 5CE14F63495533AEDBD1688B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Slider.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_Slider.cpp"; sourceTree = "SOURCE_ROOT"; }; + 5CE4B86B0FCE258A8A12AB09 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ToolbarItemPalette.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_ToolbarItemPalette.h"; sourceTree = "SOURCE_ROOT"; }; + 5D312C2C94366F88C7A7A708 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SparseSet.h"; path = "../../../../modules/juce_core/containers/juce_SparseSet.h"; sourceTree = "SOURCE_ROOT"; }; + 5D7DE60BB4DF4CE300B4F343 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ApplicationCommandInfo.h"; path = "../../../../modules/juce_gui_basics/commands/juce_ApplicationCommandInfo.h"; sourceTree = "SOURCE_ROOT"; }; + 5DBE1359F502F9C72E38800B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_VSTPluginFormat.cpp"; path = "../../../../modules/juce_audio_processors/format_types/juce_VSTPluginFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; + 5E12C726C5DBB9C81963FAB5 = { isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_gui_extra/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + 5ED8A827D78184F2E01A5511 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = TableDemo.cpp; path = ../../Source/demos/TableDemo.cpp; sourceTree = "SOURCE_ROOT"; }; + 5EFF3A95523D36B3F1A057C1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PluginDescription.cpp"; path = "../../../../modules/juce_audio_processors/processors/juce_PluginDescription.cpp"; sourceTree = "SOURCE_ROOT"; }; + 60704E9013507A9F9729017D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ImageComponent.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_ImageComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 607083E28D3CAAC3C69D3010 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_QuickTimeMovieComponent.h"; path = "../../../../modules/juce_video/playback/juce_QuickTimeMovieComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 608BEDD96B33E0475FF1FD54 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_URL.h"; path = "../../../../modules/juce_core/network/juce_URL.h"; sourceTree = "SOURCE_ROOT"; }; + 614AE257736D79B36015DBC4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiKeyboardState.h"; path = "../../../../modules/juce_audio_basics/midi/juce_MidiKeyboardState.h"; sourceTree = "SOURCE_ROOT"; }; + 6181080398CF1388C5C15051 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_BlowFish.cpp"; path = "../../../../modules/juce_cryptography/encryption/juce_BlowFish.cpp"; sourceTree = "SOURCE_ROOT"; }; + 618F07B344089C7B13EED411 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CPlusPlusCodeTokeniser.h"; path = "../../../../modules/juce_gui_extra/code_editor/juce_CPlusPlusCodeTokeniser.h"; sourceTree = "SOURCE_ROOT"; }; + 61941C6E24D2D04F51F59134 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BubbleMessageComponent.h"; path = "../../../../modules/juce_gui_extra/misc/juce_BubbleMessageComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 61B4084F81D01C8730F5952F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MouseEvent.cpp"; path = "../../../../modules/juce_gui_basics/mouse/juce_MouseEvent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 61C6FB83D4582BF2F84EB464 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ComponentBuilder.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_ComponentBuilder.cpp"; sourceTree = "SOURCE_ROOT"; }; + 61D55BA26F1410A26A007514 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_mac_CoreGraphicsContext.h"; path = "../../../../modules/juce_graphics/native/juce_mac_CoreGraphicsContext.h"; sourceTree = "SOURCE_ROOT"; }; + 61E83A490FBB38A8D7613146 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_SystemTrayIconComponent.cpp"; path = "../../../../modules/juce_gui_extra/misc/juce_SystemTrayIconComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6289926B08B7CD4A990134F5 = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuickTime.framework; path = System/Library/Frameworks/QuickTime.framework; sourceTree = SDKROOT; }; + 62AAFFC7E5754AA715DCB1E5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TargetPlatform.h"; path = "../../../../modules/juce_core/system/juce_TargetPlatform.h"; sourceTree = "SOURCE_ROOT"; }; + 62AFEF7525003814092C79FA = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_DragAndDrop.cpp"; path = "../../../../modules/juce_gui_basics/native/juce_win32_DragAndDrop.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6314AFE1A17F085C028B4C82 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Desktop.cpp"; path = "../../../../modules/juce_gui_basics/components/juce_Desktop.cpp"; sourceTree = "SOURCE_ROOT"; }; + 63A3A467F124B67D19587D4F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_SliderPropertyComponent.cpp"; path = "../../../../modules/juce_gui_basics/properties/juce_SliderPropertyComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 63CF475000C8419AE8D25BD2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RelativePoint.h"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativePoint.h"; sourceTree = "SOURCE_ROOT"; }; + 63DD8F6DD0DDC9A6F45E0C90 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_NativeMessageBox.h"; path = "../../../../modules/juce_gui_basics/windows/juce_NativeMessageBox.h"; sourceTree = "SOURCE_ROOT"; }; + 6413A99AB17F3551937E397F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiBuffer.h"; path = "../../../../modules/juce_audio_basics/midi/juce_MidiBuffer.h"; sourceTree = "SOURCE_ROOT"; }; + 641BCC559554D3C4B51A5B92 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_mac_ObjCSuffix.h"; path = "../../../../modules/juce_core/native/juce_mac_ObjCSuffix.h"; sourceTree = "SOURCE_ROOT"; }; + 64485EF2AE378418411A8FCB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioFormatReader.h"; path = "../../../../modules/juce_audio_formats/format/juce_AudioFormatReader.h"; sourceTree = "SOURCE_ROOT"; }; + 65A50CC38E2A045D320D4224 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_StretchableObjectResizer.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_StretchableObjectResizer.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6627248BD1D82CBA820F1FCF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MessageManager.h"; path = "../../../../modules/juce_events/messages/juce_MessageManager.h"; sourceTree = "SOURCE_ROOT"; }; + 664211B1C9D22E34B60EF5E6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ImageFileFormat.cpp"; path = "../../../../modules/juce_graphics/images/juce_ImageFileFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; + 66425E2428080B75F0FFB2C4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MenuBarComponent.h"; path = "../../../../modules/juce_gui_basics/menus/juce_MenuBarComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 6649385F220EB0B654AB61FB = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = WidgetsDemo.cpp; path = ../../Source/demos/WidgetsDemo.cpp; sourceTree = "SOURCE_ROOT"; }; + 669FD4C70B8BF2B87DEAFB73 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioDataConverters.h"; path = "../../../../modules/juce_audio_basics/buffers/juce_AudioDataConverters.h"; sourceTree = "SOURCE_ROOT"; }; + 66E3497A9DCF883BCE6A27A8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileBrowserComponent.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileBrowserComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 66F2929C04B6E230FFA975C8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MidiMessage.cpp"; path = "../../../../modules/juce_audio_basics/midi/juce_MidiMessage.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6704DC3810D991DADFF947AC = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_DirectWriteTypeface.cpp"; path = "../../../../modules/juce_graphics/native/juce_win32_DirectWriteTypeface.cpp"; sourceTree = "SOURCE_ROOT"; }; + 678034FB9D177C3D08044AB9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ValueTree.cpp"; path = "../../../../modules/juce_data_structures/values/juce_ValueTree.cpp"; sourceTree = "SOURCE_ROOT"; }; + 67B45F46192481A24287B06C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioPluginInstance.h"; path = "../../../../modules/juce_audio_processors/processors/juce_AudioPluginInstance.h"; sourceTree = "SOURCE_ROOT"; }; + 67DA4E3A02A5697DE923E0C5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MixerAudioSource.cpp"; path = "../../../../modules/juce_audio_basics/sources/juce_MixerAudioSource.cpp"; sourceTree = "SOURCE_ROOT"; }; + 67F14D1D1869540E4B9540B5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ToolbarButton.h"; path = "../../../../modules/juce_gui_basics/buttons/juce_ToolbarButton.h"; sourceTree = "SOURCE_ROOT"; }; + 683535B25CE57F64EC61EFD1 = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = IOKit.framework; path = System/Library/Frameworks/IOKit.framework; sourceTree = SDKROOT; }; + 687E1D120E47EEFEEB73A4BF = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DrawableText.cpp"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawableText.cpp"; sourceTree = "SOURCE_ROOT"; }; + 690BE5039AADEF787D6E13D9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = AudioDemoTabComponent.cpp; path = ../../Source/demos/AudioDemoTabComponent.cpp; sourceTree = "SOURCE_ROOT"; }; + 6A4819E134CD45BD043C3219 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Socket.cpp"; path = "../../../../modules/juce_core/network/juce_Socket.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6B03CB11D5DEABAEE7F9E0F1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GIFLoader.cpp"; path = "../../../../modules/juce_graphics/image_formats/juce_GIFLoader.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6B0F3AF3FE7B113C33112897 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MultiDocumentPanel.h"; path = "../../../../modules/juce_gui_basics/layout/juce_MultiDocumentPanel.h"; sourceTree = "SOURCE_ROOT"; }; + 6BBB8746C2C1BB5F3C3F1FC2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_ios_UIViewComponentPeer.mm"; path = "../../../../modules/juce_gui_basics/native/juce_ios_UIViewComponentPeer.mm"; sourceTree = "SOURCE_ROOT"; }; + 6BBE4F2809E2AE0FE445302C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ImageCache.cpp"; path = "../../../../modules/juce_graphics/images/juce_ImageCache.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6BD99638187A39ABC44DCBA0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ThreadLocalValue.h"; path = "../../../../modules/juce_core/threads/juce_ThreadLocalValue.h"; sourceTree = "SOURCE_ROOT"; }; + 6C608B44E265F761D09C91CB = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Fonts.cpp"; path = "../../../../modules/juce_graphics/native/juce_linux_Fonts.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6C956B90C1BB1217BF02F0D0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ScopedValueSetter.h"; path = "../../../../modules/juce_core/containers/juce_ScopedValueSetter.h"; sourceTree = "SOURCE_ROOT"; }; + 6CC2241F234EDD873FD5BDC7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_WildcardFileFilter.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_WildcardFileFilter.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6D0757D493441CFB9C1B426A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Array.h"; path = "../../../../modules/juce_core/containers/juce_Array.h"; sourceTree = "SOURCE_ROOT"; }; + 6D16F5C591F5558984437145 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioDeviceSelectorComponent.cpp"; path = "../../../../modules/juce_audio_utils/gui/juce_AudioDeviceSelectorComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6DD58CBABB8009DAA5104BBC = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileSearchPath.cpp"; path = "../../../../modules/juce_core/files/juce_FileSearchPath.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6DF10AFB26794D47F3AC783B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_CameraDevice.cpp"; path = "../../../../modules/juce_video/native/juce_win32_CameraDevice.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6E00A6B4B754E3008B969B8A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiKeyboardComponent.h"; path = "../../../../modules/juce_audio_utils/gui/juce_MidiKeyboardComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 6E0DA76710F31FA13F5168B3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MouseListener.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_MouseListener.h"; sourceTree = "SOURCE_ROOT"; }; + 6E1CFF5227B2F2E200DD9EC7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_OpenGLComponent.cpp"; path = "../../../../modules/juce_opengl/native/juce_linux_OpenGLComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6E365FC14CFBA3BD28196D3A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ChangeListener.h"; path = "../../../../modules/juce_events/broadcasters/juce_ChangeListener.h"; sourceTree = "SOURCE_ROOT"; }; + 6EF8660ACF82A6472884ABB6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_StandardHeader.h"; path = "../../../../modules/juce_core/system/juce_StandardHeader.h"; sourceTree = "SOURCE_ROOT"; }; + 70350B2642B3D062D0A8D239 = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = System/Library/Frameworks/QuartzCore.framework; sourceTree = SDKROOT; }; + 709D153E2940C162215E31F7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ChoicePropertyComponent.cpp"; path = "../../../../modules/juce_gui_basics/properties/juce_ChoicePropertyComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 717A5E2F84E8D281325E9C1C = { isa = PBXFileReference; lastKnownFileType = file.xml; name = treedemo.xml; path = "../../Binary Data/treedemo.xml"; sourceTree = "SOURCE_ROOT"; }; + 720BE81011A4F54822E7F498 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GlowEffect.cpp"; path = "../../../../modules/juce_graphics/effects/juce_GlowEffect.cpp"; sourceTree = "SOURCE_ROOT"; }; + 725D10330456FC57C9FEA75D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RelativeRectangle.h"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativeRectangle.h"; sourceTree = "SOURCE_ROOT"; }; + 726A4629ED6E091D24471CA8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SystemClipboard.h"; path = "../../../../modules/juce_gui_basics/keyboard/juce_SystemClipboard.h"; sourceTree = "SOURCE_ROOT"; }; + 72C3E3A3E2760E1ECB6BD30A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PluginDirectoryScanner.cpp"; path = "../../../../modules/juce_audio_processors/scanning/juce_PluginDirectoryScanner.cpp"; sourceTree = "SOURCE_ROOT"; }; + 72FF1B91B6590B036636E20B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_XmlDocument.cpp"; path = "../../../../modules/juce_core/xml/juce_XmlDocument.cpp"; sourceTree = "SOURCE_ROOT"; }; + 73108C67E00C3C958FFD23D4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = FontsAndTextDemo.cpp; path = ../../Source/demos/FontsAndTextDemo.cpp; sourceTree = "SOURCE_ROOT"; }; + 731FFEA1471A03D05AED1B77 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RelativeCoordinate.h"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativeCoordinate.h"; sourceTree = "SOURCE_ROOT"; }; + 7323A374566B649091DB8837 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioProcessorEditor.h"; path = "../../../../modules/juce_audio_processors/processors/juce_AudioProcessorEditor.h"; sourceTree = "SOURCE_ROOT"; }; + 7334C493C3EC57C4AA200F01 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MP3AudioFormat.h"; path = "../../../../modules/juce_audio_formats/codecs/juce_MP3AudioFormat.h"; sourceTree = "SOURCE_ROOT"; }; + 737F8D074841EE88B24DC761 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Memory.h"; path = "../../../../modules/juce_core/memory/juce_Memory.h"; sourceTree = "SOURCE_ROOT"; }; + 73AC2ABA9094C062E8DA773E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Line.h"; path = "../../../../modules/juce_graphics/geometry/juce_Line.h"; sourceTree = "SOURCE_ROOT"; }; + 7415D37F43E9CA0C5D924D17 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Colours.cpp"; path = "../../../../modules/juce_graphics/colour/juce_Colours.cpp"; sourceTree = "SOURCE_ROOT"; }; + 7434F00C0F5768C4CFFC9C30 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_BufferingAudioSource.cpp"; path = "../../../../modules/juce_audio_basics/sources/juce_BufferingAudioSource.cpp"; sourceTree = "SOURCE_ROOT"; }; + 74390F0BB6A54198B7EE12CE = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_KeyMappingEditorComponent.h"; path = "../../../../modules/juce_gui_extra/misc/juce_KeyMappingEditorComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 747D307A1A0D468103D4B20E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ApplicationCommandInfo.cpp"; path = "../../../../modules/juce_gui_basics/commands/juce_ApplicationCommandInfo.cpp"; sourceTree = "SOURCE_ROOT"; }; + 74C5EA2191F9A05902D76BB3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MouseEvent.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_MouseEvent.h"; sourceTree = "SOURCE_ROOT"; }; + 74D36012BEBC6FDD72B0572F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TabbedButtonBar.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_TabbedButtonBar.cpp"; sourceTree = "SOURCE_ROOT"; }; + 7551834E76E49E9114B16B2B = { isa = PBXFileReference; lastKnownFileType = image.png; name = juce.png; path = "../../Binary Data/juce.png"; sourceTree = "SOURCE_ROOT"; }; + 760B6B73C7C332980801C0C7 = { isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_gui_basics/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + 7667028F4EC27060934DCF30 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Clipboard.cpp"; path = "../../../../modules/juce_gui_basics/native/juce_linux_Clipboard.cpp"; sourceTree = "SOURCE_ROOT"; }; + 766F3BD777CA786CD6BE023E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_data_structures.mm"; path = "../../../../modules/juce_data_structures/juce_data_structures.mm"; sourceTree = "SOURCE_ROOT"; }; + 768D628853DDE9E4EF563DE4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_audio_processors.h"; path = "../../../../modules/juce_audio_processors/juce_audio_processors.h"; sourceTree = "SOURCE_ROOT"; }; + 77488721DFFE4D0C22E19299 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ReferenceCountedObject.h"; path = "../../../../modules/juce_core/memory/juce_ReferenceCountedObject.h"; sourceTree = "SOURCE_ROOT"; }; + 7763574CC15B89B5BD8A4307 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_QuickTimeAudioFormat.cpp"; path = "../../../../modules/juce_audio_formats/codecs/juce_QuickTimeAudioFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; + 77845C048A123FF3D2619158 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_WindowsRegistry.h"; path = "../../../../modules/juce_core/misc/juce_WindowsRegistry.h"; sourceTree = "SOURCE_ROOT"; }; + 77CB4C3F4C72996179768CB0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioFormatReaderSource.cpp"; path = "../../../../modules/juce_audio_formats/format/juce_AudioFormatReaderSource.cpp"; sourceTree = "SOURCE_ROOT"; }; + 785F32963F7F6458F3D4DC3D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioIODevice.h"; path = "../../../../modules/juce_audio_devices/audio_io/juce_AudioIODevice.h"; sourceTree = "SOURCE_ROOT"; }; + 78AB95E1E7C39B3794F44E24 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LinkedListPointer.h"; path = "../../../../modules/juce_core/containers/juce_LinkedListPointer.h"; sourceTree = "SOURCE_ROOT"; }; + 78C4635C8F91A9A513C6B9DA = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileDragAndDropTarget.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_FileDragAndDropTarget.h"; sourceTree = "SOURCE_ROOT"; }; + 79078F37EB6919AA440017FC = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Component.cpp"; path = "../../../../modules/juce_gui_basics/components/juce_Component.cpp"; sourceTree = "SOURCE_ROOT"; }; + 79441FABE26CE4CF9BA128CC = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TimeSliceThread.h"; path = "../../../../modules/juce_core/threads/juce_TimeSliceThread.h"; sourceTree = "SOURCE_ROOT"; }; + 7985BF3EF947A7955C94364C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_NamedPipe.cpp"; path = "../../../../modules/juce_core/network/juce_NamedPipe.cpp"; sourceTree = "SOURCE_ROOT"; }; + 79E54897373142A27EC0FC40 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_InterprocessConnection.cpp"; path = "../../../../modules/juce_events/interprocess/juce_InterprocessConnection.cpp"; sourceTree = "SOURCE_ROOT"; }; + 7B0C40F57724D3021F83F423 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_video.h"; path = "../../../../modules/juce_video/juce_video.h"; sourceTree = "SOURCE_ROOT"; }; + 7B53B778BF20B1BC43E2D562 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_BigInteger.cpp"; path = "../../../../modules/juce_core/maths/juce_BigInteger.cpp"; sourceTree = "SOURCE_ROOT"; }; + 7BB52DAA6A783F0194EEF869 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Label.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_Label.h"; sourceTree = "SOURCE_ROOT"; }; + 7BB9913643FCE12B216AD8C8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ModalComponentManager.cpp"; path = "../../../../modules/juce_gui_basics/components/juce_ModalComponentManager.cpp"; sourceTree = "SOURCE_ROOT"; }; + 7C1A682DC90937487D6A4B0A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ComponentListener.h"; path = "../../../../modules/juce_gui_basics/components/juce_ComponentListener.h"; sourceTree = "SOURCE_ROOT"; }; + 7C57A68F39036348C34D73EC = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Synthesiser.h"; path = "../../../../modules/juce_audio_basics/synthesisers/juce_Synthesiser.h"; sourceTree = "SOURCE_ROOT"; }; + 7C7834D5AB7E6656A4CECF2F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_audio_devices.mm"; path = "../../../../modules/juce_audio_devices/juce_audio_devices.mm"; sourceTree = "SOURCE_ROOT"; }; + 7D01B73D4ECD4899173EE882 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_QuickTimeMovieComponent.cpp"; path = "../../../../modules/juce_video/native/juce_win32_QuickTimeMovieComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 7D12F1C172F94A735E17ADD4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ColourGradient.h"; path = "../../../../modules/juce_graphics/colour/juce_ColourGradient.h"; sourceTree = "SOURCE_ROOT"; }; + 7DA4BF4F615254D8AFD37BEE = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Button.h"; path = "../../../../modules/juce_gui_basics/buttons/juce_Button.h"; sourceTree = "SOURCE_ROOT"; }; + 7E0006CE91286527B25433FF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ResamplingAudioSource.h"; path = "../../../../modules/juce_audio_basics/sources/juce_ResamplingAudioSource.h"; sourceTree = "SOURCE_ROOT"; }; + 7E6041874E267458572B93A1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MissingGLDefinitions.h"; path = "../../../../modules/juce_opengl/native/juce_MissingGLDefinitions.h"; sourceTree = "SOURCE_ROOT"; }; + 7E6AEB024827FD9ACB353BB6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MemoryMappedFile.h"; path = "../../../../modules/juce_core/files/juce_MemoryMappedFile.h"; sourceTree = "SOURCE_ROOT"; }; + 7EF1F0BC4F4DE2986856DE41 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Viewport.h"; path = "../../../../modules/juce_gui_basics/layout/juce_Viewport.h"; sourceTree = "SOURCE_ROOT"; }; + 7F2A4EF4DE29CE775FF0F5E5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ResizableBorderComponent.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_ResizableBorderComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 7F580113B80A85759A406E81 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Files.cpp"; path = "../../../../modules/juce_core/native/juce_linux_Files.cpp"; sourceTree = "SOURCE_ROOT"; }; + 7F65B8E1571AA346AA2F2FE8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ReverbAudioSource.cpp"; path = "../../../../modules/juce_audio_basics/sources/juce_ReverbAudioSource.cpp"; sourceTree = "SOURCE_ROOT"; }; + 7FC1A0B1663AC9262104D715 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_KeyListener.h"; path = "../../../../modules/juce_gui_basics/keyboard/juce_KeyListener.h"; sourceTree = "SOURCE_ROOT"; }; + 8042D0D2B38EBD19652CBA55 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OldSchoolLookAndFeel.cpp"; path = "../../../../modules/juce_gui_extra/lookandfeel/juce_OldSchoolLookAndFeel.cpp"; sourceTree = "SOURCE_ROOT"; }; + 805B94425CD56EA78E0A705B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AudioDemoPlaybackPage.h; path = ../../Source/demos/AudioDemoPlaybackPage.h; sourceTree = "SOURCE_ROOT"; }; + 80E7D8D4E601BCC20054475E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ActionBroadcaster.h"; path = "../../../../modules/juce_events/broadcasters/juce_ActionBroadcaster.h"; sourceTree = "SOURCE_ROOT"; }; + 80EEC26431102B212C9F873B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PathIterator.cpp"; path = "../../../../modules/juce_graphics/geometry/juce_PathIterator.cpp"; sourceTree = "SOURCE_ROOT"; }; + 814313374CD209A40282985E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PluginDescription.h"; path = "../../../../modules/juce_audio_processors/processors/juce_PluginDescription.h"; sourceTree = "SOURCE_ROOT"; }; + 8154D2D681E028B8783E5331 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_mac_CoreGraphicsHelpers.h"; path = "../../../../modules/juce_graphics/native/juce_mac_CoreGraphicsHelpers.h"; sourceTree = "SOURCE_ROOT"; }; + 81641BC45BAA99D207B153A7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = RenderingTestComponent.cpp; path = ../../Source/demos/RenderingTestComponent.cpp; sourceTree = "SOURCE_ROOT"; }; + 823A2690E2229E32DE984AD2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileOutputStream.cpp"; path = "../../../../modules/juce_core/files/juce_FileOutputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; + 82474A9673BE92E34D03FE39 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Threads.cpp"; path = "../../../../modules/juce_core/native/juce_android_Threads.cpp"; sourceTree = "SOURCE_ROOT"; }; + 825BDA58C2694CE7F3FC2494 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ComponentBuilder.h"; path = "../../../../modules/juce_gui_basics/layout/juce_ComponentBuilder.h"; sourceTree = "SOURCE_ROOT"; }; + 82AD87FA68D9DDD78F9A4674 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileBasedDocument.h"; path = "../../../../modules/juce_gui_extra/documents/juce_FileBasedDocument.h"; sourceTree = "SOURCE_ROOT"; }; + 82DD6AB8F5279385455B0769 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ToneGeneratorAudioSource.h"; path = "../../../../modules/juce_audio_basics/sources/juce_ToneGeneratorAudioSource.h"; sourceTree = "SOURCE_ROOT"; }; + 830186B50B369AD64C539EE1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GZIPDecompressorInputStream.cpp"; path = "../../../../modules/juce_core/zip/juce_GZIPDecompressorInputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; + 834DCAD1857B654514D4A0BD = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_CharacterFunctions.cpp"; path = "../../../../modules/juce_core/text/juce_CharacterFunctions.cpp"; sourceTree = "SOURCE_ROOT"; }; + 8391251872CF6C7C11F11EEC = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Identifier.cpp"; path = "../../../../modules/juce_core/text/juce_Identifier.cpp"; sourceTree = "SOURCE_ROOT"; }; + 83D67DD10BD2ACDC0984ADCB = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = InterprocessCommsDemo.cpp; path = ../../Source/demos/InterprocessCommsDemo.cpp; sourceTree = "SOURCE_ROOT"; }; + 840EF2C371FCC5690DA216F6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SHA256.h"; path = "../../../../modules/juce_cryptography/hashing/juce_SHA256.h"; sourceTree = "SOURCE_ROOT"; }; + 8565630D87FEE505D50CE2EF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OpenGLExtensions.h"; path = "../../../../modules/juce_opengl/native/juce_OpenGLExtensions.h"; sourceTree = "SOURCE_ROOT"; }; + 85D1779E60213BC6670E2C75 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_StringArray.h"; path = "../../../../modules/juce_core/text/juce_StringArray.h"; sourceTree = "SOURCE_ROOT"; }; + 8603713AFBC316218045A963 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MemoryInputStream.cpp"; path = "../../../../modules/juce_core/streams/juce_MemoryInputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; + 868D4BEF6B94EB7BF659CF01 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_core.mm"; path = "../../../../modules/juce_core/juce_core.mm"; sourceTree = "SOURCE_ROOT"; }; + 86A52913E895EFD9C4D43D04 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioThumbnailCache.h"; path = "../../../../modules/juce_audio_utils/gui/juce_AudioThumbnailCache.h"; sourceTree = "SOURCE_ROOT"; }; + 86DDC7DDD8BFE56FCA73E397 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_GenericAudioProcessorEditor.h"; path = "../../../../modules/juce_audio_processors/processors/juce_GenericAudioProcessorEditor.h"; sourceTree = "SOURCE_ROOT"; }; + 86DF811859C602F24589AC3D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FilenameComponent.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FilenameComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 877D61C08ADC5B13C2627327 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = OpenGLDemo.cpp; path = ../../Source/demos/OpenGLDemo.cpp; sourceTree = "SOURCE_ROOT"; }; + 87EDA764A802069F89CEC355 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LowLevelGraphicsPostScriptRenderer.h"; path = "../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsPostScriptRenderer.h"; sourceTree = "SOURCE_ROOT"; }; + 87FB016388B49E97FCCBE69B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Matrix3D.h"; path = "../../../../modules/juce_opengl/opengl/juce_Matrix3D.h"; sourceTree = "SOURCE_ROOT"; }; + 8878426C7F58CB22969E7133 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OpenGLContext.h"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLContext.h"; sourceTree = "SOURCE_ROOT"; }; + 89006BBD5040A06E6C559F16 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_VSTPluginFormat.h"; path = "../../../../modules/juce_audio_processors/format_types/juce_VSTPluginFormat.h"; sourceTree = "SOURCE_ROOT"; }; + 890F3D7DA5BC01DACF8E5431 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_events.mm"; path = "../../../../modules/juce_events/juce_events.mm"; sourceTree = "SOURCE_ROOT"; }; + 8939B318C3AF6793C72D8A9E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ArrayAllocationBase.h"; path = "../../../../modules/juce_core/containers/juce_ArrayAllocationBase.h"; sourceTree = "SOURCE_ROOT"; }; + 893D867B3AB93E4D96AF060E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ProgressBar.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_ProgressBar.h"; sourceTree = "SOURCE_ROOT"; }; + 896140063D12A19D1DCBF3DF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OldSchoolLookAndFeel.h"; path = "../../../../modules/juce_gui_extra/lookandfeel/juce_OldSchoolLookAndFeel.h"; sourceTree = "SOURCE_ROOT"; }; + 897420C9C4D80F1AE5F80637 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Label.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_Label.cpp"; sourceTree = "SOURCE_ROOT"; }; + 89ABB9AFCDB73A409754BE48 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_StringPairArray.h"; path = "../../../../modules/juce_core/text/juce_StringPairArray.h"; sourceTree = "SOURCE_ROOT"; }; + 89F519023C03C9908F761BAE = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileBrowserListener.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileBrowserListener.h"; sourceTree = "SOURCE_ROOT"; }; + 8A15EDB6321B758A3EEF635B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileOutputStream.h"; path = "../../../../modules/juce_core/files/juce_FileOutputStream.h"; sourceTree = "SOURCE_ROOT"; }; + 8A29D461DA6C72497B49189C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = CodeEditorDemo.cpp; path = ../../Source/demos/CodeEditorDemo.cpp; sourceTree = "SOURCE_ROOT"; }; + 8A6EC99172989940C08E809D = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = WebKit.framework; path = System/Library/Frameworks/WebKit.framework; sourceTree = SDKROOT; }; + 8A79588D3BEDD0DF69065099 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_StringArray.cpp"; path = "../../../../modules/juce_core/text/juce_StringArray.cpp"; sourceTree = "SOURCE_ROOT"; }; + 8B0B9E8A37911F76577E3AA8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_KeyboardFocusTraverser.h"; path = "../../../../modules/juce_gui_basics/keyboard/juce_KeyboardFocusTraverser.h"; sourceTree = "SOURCE_ROOT"; }; + 8B7490B27707118E03A50933 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_Threads.mm"; path = "../../../../modules/juce_core/native/juce_mac_Threads.mm"; sourceTree = "SOURCE_ROOT"; }; + 8CA151FDAFC858B6535BF6A3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_ActiveXComponent.cpp"; path = "../../../../modules/juce_gui_extra/native/juce_win32_ActiveXComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 8CB23F01604E12FD33256AC5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LocalisedStrings.h"; path = "../../../../modules/juce_core/text/juce_LocalisedStrings.h"; sourceTree = "SOURCE_ROOT"; }; + 8D3F5C48CD1B104A105845E9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SystemStats.h"; path = "../../../../modules/juce_core/system/juce_SystemStats.h"; sourceTree = "SOURCE_ROOT"; }; + 8D66115C77E904AB96FDF64E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ScopedWriteLock.h"; path = "../../../../modules/juce_core/threads/juce_ScopedWriteLock.h"; sourceTree = "SOURCE_ROOT"; }; + 8E6E18125D1046B97EF7AEE2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PreferencesPanel.cpp"; path = "../../../../modules/juce_gui_extra/misc/juce_PreferencesPanel.cpp"; sourceTree = "SOURCE_ROOT"; }; + 8E7F5F80EB6D99EED152A465 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_AudioUnitPluginFormat.mm"; path = "../../../../modules/juce_audio_processors/format_types/juce_AudioUnitPluginFormat.mm"; sourceTree = "SOURCE_ROOT"; }; + 8EB9B4853F225BDB97D6626E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_CoreGraphicsContext.mm"; path = "../../../../modules/juce_graphics/native/juce_mac_CoreGraphicsContext.mm"; sourceTree = "SOURCE_ROOT"; }; + 8EEB4DEB11F3DF01BA6F7528 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OpenGLShaderProgram.h"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLShaderProgram.h"; sourceTree = "SOURCE_ROOT"; }; + 8F1D89D1349B0DCC115B5D47 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Threads.cpp"; path = "../../../../modules/juce_core/native/juce_win32_Threads.cpp"; sourceTree = "SOURCE_ROOT"; }; + 8F37F4E9DB8E42EDF29DE166 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = CameraDemo.cpp; path = ../../Source/demos/CameraDemo.cpp; sourceTree = "SOURCE_ROOT"; }; + 904B316152B6C23112E0A0B1 = { isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_audio_processors/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + 90F9E3FB8FF07BA924E42DC0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Typeface.h"; path = "../../../../modules/juce_graphics/fonts/juce_Typeface.h"; sourceTree = "SOURCE_ROOT"; }; + 924667AB0E27AC2CE1EB7828 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TopLevelWindow.h"; path = "../../../../modules/juce_gui_basics/windows/juce_TopLevelWindow.h"; sourceTree = "SOURCE_ROOT"; }; + 927B5B18A655057D57C37D35 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ShapeButton.cpp"; path = "../../../../modules/juce_gui_basics/buttons/juce_ShapeButton.cpp"; sourceTree = "SOURCE_ROOT"; }; + 936C6419223D7B28CE16A72B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_BufferedInputStream.cpp"; path = "../../../../modules/juce_core/streams/juce_BufferedInputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9398049BFCAC42B8FD1E16C5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DirectXPluginFormat.h"; path = "../../../../modules/juce_audio_processors/format_types/juce_DirectXPluginFormat.h"; sourceTree = "SOURCE_ROOT"; }; + 93C594ECD5CEA7878114149A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_WebBrowserComponent.cpp"; path = "../../../../modules/juce_gui_extra/native/juce_win32_WebBrowserComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 94A9A7DF00C64509E9B5A337 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = QuickTimeDemo.cpp; path = ../../Source/demos/QuickTimeDemo.cpp; sourceTree = "SOURCE_ROOT"; }; + 94EB4630C360BA31195FA13D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioIODeviceType.cpp"; path = "../../../../modules/juce_audio_devices/audio_io/juce_AudioIODeviceType.cpp"; sourceTree = "SOURCE_ROOT"; }; + 95305C4003CD4784CA20D1D1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TextEditorKeyMapper.h"; path = "../../../../modules/juce_gui_basics/keyboard/juce_TextEditorKeyMapper.h"; sourceTree = "SOURCE_ROOT"; }; + 956A7825F42E2D33FC97CF73 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MemoryOutputStream.cpp"; path = "../../../../modules/juce_core/streams/juce_MemoryOutputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; + 95CA7C1593FFDE7AF8CDE98F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_audio_devices.h"; path = "../../../../modules/juce_audio_devices/juce_audio_devices.h"; sourceTree = "SOURCE_ROOT"; }; + 9619FDAC2D7C1E273CFBD10C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioSourcePlayer.cpp"; path = "../../../../modules/juce_audio_devices/sources/juce_AudioSourcePlayer.cpp"; sourceTree = "SOURCE_ROOT"; }; + 96C8D0EE75ABEB02422AA41F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DeletedAtShutdown.h"; path = "../../../../modules/juce_events/messages/juce_DeletedAtShutdown.h"; sourceTree = "SOURCE_ROOT"; }; + 96DDB84D9722732A64DA57A2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_CallOutBox.cpp"; path = "../../../../modules/juce_gui_basics/windows/juce_CallOutBox.cpp"; sourceTree = "SOURCE_ROOT"; }; + 973F391C41F2774E0CB8D54A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MultiTimer.h"; path = "../../../../modules/juce_events/timers/juce_MultiTimer.h"; sourceTree = "SOURCE_ROOT"; }; + 97D6A96DEE15B1C9C270FAEB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Decibels.h"; path = "../../../../modules/juce_audio_basics/effects/juce_Decibels.h"; sourceTree = "SOURCE_ROOT"; }; + 98028D7823ADA4594A8A2A22 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Messaging.cpp"; path = "../../../../modules/juce_events/native/juce_android_Messaging.cpp"; sourceTree = "SOURCE_ROOT"; }; + 988A5D1934361EB3009CD52C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_WeakReference.h"; path = "../../../../modules/juce_core/memory/juce_WeakReference.h"; sourceTree = "SOURCE_ROOT"; }; + 989587AD131FF27180BEB3D1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RectanglePlacement.h"; path = "../../../../modules/juce_graphics/placement/juce_RectanglePlacement.h"; sourceTree = "SOURCE_ROOT"; }; + 98C642B2E87A5D752E517A6D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MixerAudioSource.h"; path = "../../../../modules/juce_audio_basics/sources/juce_MixerAudioSource.h"; sourceTree = "SOURCE_ROOT"; }; + 98C6708DE85079E157822A2A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Time.cpp"; path = "../../../../modules/juce_core/time/juce_Time.cpp"; sourceTree = "SOURCE_ROOT"; }; + 98D731CDF5B6F60ED9198CC7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LowLevelGraphicsContext.h"; path = "../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsContext.h"; sourceTree = "SOURCE_ROOT"; }; + 98DD360F5D3D60539185DE90 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileSearchPathListComponent.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileSearchPathListComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 98EB4070281520EADE02212C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TableListBox.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_TableListBox.h"; sourceTree = "SOURCE_ROOT"; }; + 99971599D48BFF60437E0F44 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RelativeCoordinate.cpp"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativeCoordinate.cpp"; sourceTree = "SOURCE_ROOT"; }; + 99AAA16209763F3DA2113D1B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_AppleRemote.mm"; path = "../../../../modules/juce_gui_extra/native/juce_mac_AppleRemote.mm"; sourceTree = "SOURCE_ROOT"; }; + 99B22FB30FB36F358A932F6A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ToolbarButton.cpp"; path = "../../../../modules/juce_gui_basics/buttons/juce_ToolbarButton.cpp"; sourceTree = "SOURCE_ROOT"; }; + 99FE46FBB05F16AFF37AB6A1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ScopedLock.h"; path = "../../../../modules/juce_core/threads/juce_ScopedLock.h"; sourceTree = "SOURCE_ROOT"; }; + 9A1B5431CF0FFF248896A8F2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_AudioCDBurner.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_win32_AudioCDBurner.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9A947B1B4163730D13A4D24C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ScopedReadLock.h"; path = "../../../../modules/juce_core/threads/juce_ScopedReadLock.h"; sourceTree = "SOURCE_ROOT"; }; + 9AB36BCC26D5CC2CCC71E5E4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TooltipWindow.h"; path = "../../../../modules/juce_gui_basics/windows/juce_TooltipWindow.h"; sourceTree = "SOURCE_ROOT"; }; + 9AB8510F26D6035159042BC2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_KeyMappingEditorComponent.cpp"; path = "../../../../modules/juce_gui_extra/misc/juce_KeyMappingEditorComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9AE7533B1AD68245E130B3AC = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_opengl.mm"; path = "../../../../modules/juce_opengl/juce_opengl.mm"; sourceTree = "SOURCE_ROOT"; }; + 9AFD4A062067D5F709FA793C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_InterprocessConnectionServer.h"; path = "../../../../modules/juce_events/interprocess/juce_InterprocessConnectionServer.h"; sourceTree = "SOURCE_ROOT"; }; + 9B07C7F9F91CDF9465EE2AEE = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ImageEffectFilter.h"; path = "../../../../modules/juce_graphics/effects/juce_ImageEffectFilter.h"; sourceTree = "SOURCE_ROOT"; }; + 9B572F52342BE9169D435F1C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ScrollBar.h"; path = "../../../../modules/juce_gui_basics/layout/juce_ScrollBar.h"; sourceTree = "SOURCE_ROOT"; }; + 9B5833CD741A705B8AFAF9C0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Variant.cpp"; path = "../../../../modules/juce_core/containers/juce_Variant.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9BA092AE037F13C968200B25 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioFormat.cpp"; path = "../../../../modules/juce_audio_formats/format/juce_AudioFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9C0DB4F281D10303224E41A1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_Files.mm"; path = "../../../../modules/juce_core/native/juce_mac_Files.mm"; sourceTree = "SOURCE_ROOT"; }; + 9C5F40CA5A70DD8207F53047 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Font.h"; path = "../../../../modules/juce_graphics/fonts/juce_Font.h"; sourceTree = "SOURCE_ROOT"; }; + 9C785342B462AEB3D63418F6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_WavAudioFormat.cpp"; path = "../../../../modules/juce_audio_formats/codecs/juce_WavAudioFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9C7B5E573807ED59065B54DA = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ResizableCornerComponent.h"; path = "../../../../modules/juce_gui_basics/layout/juce_ResizableCornerComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 9CD9B6E7197079625A165653 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_SystemStats.mm"; path = "../../../../modules/juce_core/native/juce_mac_SystemStats.mm"; sourceTree = "SOURCE_ROOT"; }; + 9CF4E56974B8290F34032432 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_mac_CoreAudio.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_mac_CoreAudio.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9D042E1CAB03CFCD4B937951 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_WebBrowserComponent.h"; path = "../../../../modules/juce_gui_extra/misc/juce_WebBrowserComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 9D09225ABCE19597A944DEEA = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PositionableAudioSource.h"; path = "../../../../modules/juce_audio_basics/sources/juce_PositionableAudioSource.h"; sourceTree = "SOURCE_ROOT"; }; + 9D18794763C086784ECE98D6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_BubbleComponent.cpp"; path = "../../../../modules/juce_gui_basics/misc/juce_BubbleComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9D70FB5DE184C636EC01EC67 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ListenerList.h"; path = "../../../../modules/juce_events/broadcasters/juce_ListenerList.h"; sourceTree = "SOURCE_ROOT"; }; + 9E80EC17EE6322C452E9A774 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DrawableButton.cpp"; path = "../../../../modules/juce_gui_basics/buttons/juce_DrawableButton.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9E825AC2FBE27AC2BCAEA69F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_IIRFilterAudioSource.h"; path = "../../../../modules/juce_audio_basics/sources/juce_IIRFilterAudioSource.h"; sourceTree = "SOURCE_ROOT"; }; + 9F35ACC90F2A1C2E565148C8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_ios_Windowing.mm"; path = "../../../../modules/juce_gui_basics/native/juce_ios_Windowing.mm"; sourceTree = "SOURCE_ROOT"; }; + A16EC49106F4E28AD49EECC0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileSearchPath.h"; path = "../../../../modules/juce_core/files/juce_FileSearchPath.h"; sourceTree = "SOURCE_ROOT"; }; + A18C61D2206141C03B24BF9B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SelectedItemSet.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_SelectedItemSet.h"; sourceTree = "SOURCE_ROOT"; }; + A1A96650D3211A87738A9B75 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DropShadower.cpp"; path = "../../../../modules/juce_gui_basics/misc/juce_DropShadower.cpp"; sourceTree = "SOURCE_ROOT"; }; + A1D2256DD1E864A4560459F3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_VSTMidiEventList.h"; path = "../../../../modules/juce_audio_processors/format_types/juce_VSTMidiEventList.h"; sourceTree = "SOURCE_ROOT"; }; + A26D0251E9EF4FAB12D1737B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RelativeTime.h"; path = "../../../../modules/juce_core/time/juce_RelativeTime.h"; sourceTree = "SOURCE_ROOT"; }; + A2BBD7D58010E488BE904CCC = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DocumentWindow.cpp"; path = "../../../../modules/juce_gui_basics/windows/juce_DocumentWindow.cpp"; sourceTree = "SOURCE_ROOT"; }; + A3346F6C215C2CEB5F9416FC = { isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_core/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + A34C1EFF7C51BEB33C22FAFA = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TextEditor.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_TextEditor.cpp"; sourceTree = "SOURCE_ROOT"; }; + A4BF6FE6902ACF80D2E3DB60 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_win32_HiddenMessageWindow.h"; path = "../../../../modules/juce_events/native/juce_win32_HiddenMessageWindow.h"; sourceTree = "SOURCE_ROOT"; }; + A57A09A4137135A0AF6A0800 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ComponentDragger.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_ComponentDragger.h"; sourceTree = "SOURCE_ROOT"; }; + A58203002289D424A2CDF5DD = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Application.cpp"; path = "../../../../modules/juce_gui_basics/application/juce_Application.cpp"; sourceTree = "SOURCE_ROOT"; }; + A588C458AC395D8AC09A433D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MarkerList.cpp"; path = "../../../../modules/juce_gui_basics/positioning/juce_MarkerList.cpp"; sourceTree = "SOURCE_ROOT"; }; + A5A6819C57A0399C81E03301 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Network.cpp"; path = "../../../../modules/juce_core/native/juce_android_Network.cpp"; sourceTree = "SOURCE_ROOT"; }; + A6073115FE5E1E635C78DDFE = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SpinLock.h"; path = "../../../../modules/juce_core/threads/juce_SpinLock.h"; sourceTree = "SOURCE_ROOT"; }; + A6C2A4889A4E70DE735EBA4B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_LowLevelGraphicsPostScriptRenderer.cpp"; path = "../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsPostScriptRenderer.cpp"; sourceTree = "SOURCE_ROOT"; }; + A6C606F3BE6B630561EDE155 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_IIRFilterAudioSource.cpp"; path = "../../../../modules/juce_audio_basics/sources/juce_IIRFilterAudioSource.cpp"; sourceTree = "SOURCE_ROOT"; }; + A6FCBC9721E7FC9DE30B6DC4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Midi.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_linux_Midi.cpp"; sourceTree = "SOURCE_ROOT"; }; + A72FB74D13AA5C6A472E9E82 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ChangeBroadcaster.cpp"; path = "../../../../modules/juce_events/broadcasters/juce_ChangeBroadcaster.cpp"; sourceTree = "SOURCE_ROOT"; }; + A763E7AF50D548D8C4A4C3D1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioDeviceManager.h"; path = "../../../../modules/juce_audio_devices/audio_io/juce_AudioDeviceManager.h"; sourceTree = "SOURCE_ROOT"; }; + A7B3B265DACC82D9E9CFB3DA = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OpenGLGraphicsContext.h"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLGraphicsContext.h"; sourceTree = "SOURCE_ROOT"; }; + A7BD5AB895B2531A75FE0268 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BufferingAudioSource.h"; path = "../../../../modules/juce_audio_basics/sources/juce_BufferingAudioSource.h"; sourceTree = "SOURCE_ROOT"; }; + A7F413D4C880363878469E5A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_JSON.h"; path = "../../../../modules/juce_core/json/juce_JSON.h"; sourceTree = "SOURCE_ROOT"; }; + A80CC48B8215D447643CA411 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ToolbarItemFactory.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_ToolbarItemFactory.h"; sourceTree = "SOURCE_ROOT"; }; + A86557C09D01406BB6964DB6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MathsFunctions.h"; path = "../../../../modules/juce_core/maths/juce_MathsFunctions.h"; sourceTree = "SOURCE_ROOT"; }; + A8B2537E3AEB0F0B791CF030 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileInputSource.h"; path = "../../../../modules/juce_core/streams/juce_FileInputSource.h"; sourceTree = "SOURCE_ROOT"; }; + A8F2E649E566EDE8D4C42F21 = { isa = PBXFileReference; lastKnownFileType = image.png; name = "juce_icon.png"; path = "../../Binary Data/juce_icon.png"; sourceTree = "SOURCE_ROOT"; }; + A93A4042E1214A65BD70DAEB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Primes.h"; path = "../../../../modules/juce_cryptography/encryption/juce_Primes.h"; sourceTree = "SOURCE_ROOT"; }; + A9566A42230AACC1AFDC6C5F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_FileChooser.cpp"; path = "../../../../modules/juce_gui_basics/native/juce_android_FileChooser.cpp"; sourceTree = "SOURCE_ROOT"; }; + A974197873E277C3BA5DF666 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_cryptography.h"; path = "../../../../modules/juce_cryptography/juce_cryptography.h"; sourceTree = "SOURCE_ROOT"; }; + A97EC32975392744C62684F9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_gui_extra.h"; path = "../../../../modules/juce_gui_extra/juce_gui_extra.h"; sourceTree = "SOURCE_ROOT"; }; + A9958339328213FF76D8A79C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MouseInputSource.cpp"; path = "../../../../modules/juce_gui_basics/mouse/juce_MouseInputSource.cpp"; sourceTree = "SOURCE_ROOT"; }; + A9B72D6049A3539B63AE79D5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CachedComponentImage.h"; path = "../../../../modules/juce_gui_basics/components/juce_CachedComponentImage.h"; sourceTree = "SOURCE_ROOT"; }; + AA0DE5CA2B089393B110FD25 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DrawableShape.h"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawableShape.h"; sourceTree = "SOURCE_ROOT"; }; + AAABC8FBF364D9A596F4AA4E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_android_JNIHelpers.h"; path = "../../../../modules/juce_core/native/juce_android_JNIHelpers.h"; sourceTree = "SOURCE_ROOT"; }; + AAC98CB517D934F42A25416E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BubbleComponent.h"; path = "../../../../modules/juce_gui_basics/misc/juce_BubbleComponent.h"; sourceTree = "SOURCE_ROOT"; }; + AB4A28A3667EA4C8393470A7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Result.h"; path = "../../../../modules/juce_core/misc/juce_Result.h"; sourceTree = "SOURCE_ROOT"; }; + ABBA4018C1596481E7CD51CD = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_NSViewComponent.mm"; path = "../../../../modules/juce_gui_extra/native/juce_mac_NSViewComponent.mm"; sourceTree = "SOURCE_ROOT"; }; + ABDBA289C591093A65BD526B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MultiTimer.cpp"; path = "../../../../modules/juce_events/timers/juce_MultiTimer.cpp"; sourceTree = "SOURCE_ROOT"; }; + AC2D4E1081F69B20AAB47E2F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ResizableEdgeComponent.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_ResizableEdgeComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + AC3EFDDC80761A45E8BE0624 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OpenGLFrameBuffer.cpp"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLFrameBuffer.cpp"; sourceTree = "SOURCE_ROOT"; }; + ACB502AF25A235733295406E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ChangeBroadcaster.h"; path = "../../../../modules/juce_events/broadcasters/juce_ChangeBroadcaster.h"; sourceTree = "SOURCE_ROOT"; }; + ACC522FB23E25ADDD38F8F98 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioSubsectionReader.h"; path = "../../../../modules/juce_audio_formats/format/juce_AudioSubsectionReader.h"; sourceTree = "SOURCE_ROOT"; }; + AE2C0F932F7E54799FA0897C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PluginListComponent.h"; path = "../../../../modules/juce_audio_processors/scanning/juce_PluginListComponent.h"; sourceTree = "SOURCE_ROOT"; }; + AE394742FA0F2C6AA39906DD = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_OpenGLComponent.mm"; path = "../../../../modules/juce_opengl/native/juce_mac_OpenGLComponent.mm"; sourceTree = "SOURCE_ROOT"; }; + AE860FA70A2F37F4A889A9EF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ZipFile.h"; path = "../../../../modules/juce_core/zip/juce_ZipFile.h"; sourceTree = "SOURCE_ROOT"; }; + AEA287A89324FB9D48370C33 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AsyncUpdater.cpp"; path = "../../../../modules/juce_events/broadcasters/juce_AsyncUpdater.cpp"; sourceTree = "SOURCE_ROOT"; }; + AF26F1B432EF78EB76107FDA = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Timer.cpp"; path = "../../../../modules/juce_events/timers/juce_Timer.cpp"; sourceTree = "SOURCE_ROOT"; }; + AF5FD9E66E46B600914FFE53 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TabbedButtonBar.h"; path = "../../../../modules/juce_gui_basics/layout/juce_TabbedButtonBar.h"; sourceTree = "SOURCE_ROOT"; }; + AF9F8BD7FAA0567B70EA397C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_NamedPipe.h"; path = "../../../../modules/juce_core/network/juce_NamedPipe.h"; sourceTree = "SOURCE_ROOT"; }; + B0461717A1A4204943AB55C3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_Strings.mm"; path = "../../../../modules/juce_core/native/juce_mac_Strings.mm"; sourceTree = "SOURCE_ROOT"; }; + B16E1644785E869DC000112C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GenericAudioProcessorEditor.cpp"; path = "../../../../modules/juce_audio_processors/processors/juce_GenericAudioProcessorEditor.cpp"; sourceTree = "SOURCE_ROOT"; }; + B1C64086587109AA429DE418 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ArrowButton.h"; path = "../../../../modules/juce_gui_basics/buttons/juce_ArrowButton.h"; sourceTree = "SOURCE_ROOT"; }; + B1EF98E196E432165CEA08F7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MemoryBlock.h"; path = "../../../../modules/juce_core/memory/juce_MemoryBlock.h"; sourceTree = "SOURCE_ROOT"; }; + B22D28FB41374E7092AEE96C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_ios_MessageManager.mm"; path = "../../../../modules/juce_events/native/juce_ios_MessageManager.mm"; sourceTree = "SOURCE_ROOT"; }; + B2F5CA0FBCECC10EEEAD11E9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PreferencesPanel.h"; path = "../../../../modules/juce_gui_extra/misc/juce_PreferencesPanel.h"; sourceTree = "SOURCE_ROOT"; }; + B3C3985129CB310EECCBDFF7 = { isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_audio_formats/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + B3E75CAB88F9CBD5145C226C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MidiMessageSequence.cpp"; path = "../../../../modules/juce_audio_basics/midi/juce_MidiMessageSequence.cpp"; sourceTree = "SOURCE_ROOT"; }; + B3FDF6B35E4E6ED6AAA8CDE4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MidiOutput.cpp"; path = "../../../../modules/juce_audio_devices/midi_io/juce_MidiOutput.cpp"; sourceTree = "SOURCE_ROOT"; }; + B418FE6F1E2F268880AE00A8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ListBox.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_ListBox.cpp"; sourceTree = "SOURCE_ROOT"; }; + B428CC689CD359B29C67272B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CallOutBox.h"; path = "../../../../modules/juce_gui_basics/windows/juce_CallOutBox.h"; sourceTree = "SOURCE_ROOT"; }; + B523ED8502475B9BB3F392C7 = { isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_graphics/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + B53B1A87D9A58B3E056B4D8E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ImageConvolutionKernel.h"; path = "../../../../modules/juce_graphics/images/juce_ImageConvolutionKernel.h"; sourceTree = "SOURCE_ROOT"; }; + B59728841A18523C5950A51B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Timer.h"; path = "../../../../modules/juce_events/timers/juce_Timer.h"; sourceTree = "SOURCE_ROOT"; }; + B59DA3ED4F12C1FFEE433EE3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DocumentWindow.h"; path = "../../../../modules/juce_gui_basics/windows/juce_DocumentWindow.h"; sourceTree = "SOURCE_ROOT"; }; + B5B987C3029862AC58363F1A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ImageComponent.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_ImageComponent.h"; sourceTree = "SOURCE_ROOT"; }; + B62A2E9AE08575992BAE53C5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ScopedXLock.h"; path = "../../../../modules/juce_events/native/juce_ScopedXLock.h"; sourceTree = "SOURCE_ROOT"; }; + B657CFA035D5285F14DE6AD3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Threads.cpp"; path = "../../../../modules/juce_core/native/juce_linux_Threads.cpp"; sourceTree = "SOURCE_ROOT"; }; + B65938BA2A3EE3FEE9923E12 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CharacterFunctions.h"; path = "../../../../modules/juce_core/text/juce_CharacterFunctions.h"; sourceTree = "SOURCE_ROOT"; }; + B6B93A495D82478E99956AD7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Thread.h"; path = "../../../../modules/juce_core/threads/juce_Thread.h"; sourceTree = "SOURCE_ROOT"; }; + B6D34ED1DE5CC8010A1BE232 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DeletedAtShutdown.cpp"; path = "../../../../modules/juce_events/messages/juce_DeletedAtShutdown.cpp"; sourceTree = "SOURCE_ROOT"; }; + B6ECBC8983C8C13575A3420E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_StringPool.h"; path = "../../../../modules/juce_core/text/juce_StringPool.h"; sourceTree = "SOURCE_ROOT"; }; + B6F0FA98AD1AA6A3552A59FE = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PathStrokeType.cpp"; path = "../../../../modules/juce_graphics/geometry/juce_PathStrokeType.cpp"; sourceTree = "SOURCE_ROOT"; }; + B6F619428216E8DD021C6ECD = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Random.h"; path = "../../../../modules/juce_core/maths/juce_Random.h"; sourceTree = "SOURCE_ROOT"; }; + B792478999FB8A13DCE4FF99 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioProcessor.cpp"; path = "../../../../modules/juce_audio_processors/processors/juce_AudioProcessor.cpp"; sourceTree = "SOURCE_ROOT"; }; + B81FA2ED22BCC03D124031ED = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OpenGLPixelFormat.h"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLPixelFormat.h"; sourceTree = "SOURCE_ROOT"; }; + B875CBC2CBA6D01EE0AAB25C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_gui_basics.h"; path = "../../../../modules/juce_gui_basics/juce_gui_basics.h"; sourceTree = "SOURCE_ROOT"; }; + B91F3E65CE47056DAF5C4DA2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ReadWriteLock.h"; path = "../../../../modules/juce_core/threads/juce_ReadWriteLock.h"; sourceTree = "SOURCE_ROOT"; }; + B9A07B3C2CC36D0830745F31 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioFormatWriter.h"; path = "../../../../modules/juce_audio_formats/format/juce_AudioFormatWriter.h"; sourceTree = "SOURCE_ROOT"; }; + BA710A8F1D5B056162B7CB3E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_EdgeTable.h"; path = "../../../../modules/juce_graphics/geometry/juce_EdgeTable.h"; sourceTree = "SOURCE_ROOT"; }; + BA8CA56A4E1F30984B8E4208 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MouseInputSource.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_MouseInputSource.h"; sourceTree = "SOURCE_ROOT"; }; + BADAE0896F7D4AEAA481B257 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PluginDirectoryScanner.h"; path = "../../../../modules/juce_audio_processors/scanning/juce_PluginDirectoryScanner.h"; sourceTree = "SOURCE_ROOT"; }; + BAEAC53813F354CE5E045E9F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Desktop.h"; path = "../../../../modules/juce_gui_basics/components/juce_Desktop.h"; sourceTree = "SOURCE_ROOT"; }; + BAF897CBD4F6F7382D4DC72A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ReferenceCountedArray.h"; path = "../../../../modules/juce_core/containers/juce_ReferenceCountedArray.h"; sourceTree = "SOURCE_ROOT"; }; + BB94B67B5B0EC06015621F59 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RelativeParallelogram.h"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativeParallelogram.h"; sourceTree = "SOURCE_ROOT"; }; + BBA5037F5ABAFDAB54EB6903 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioPlayHead.h"; path = "../../../../modules/juce_audio_processors/processors/juce_AudioPlayHead.h"; sourceTree = "SOURCE_ROOT"; }; + BC3978DEBCC88DB02860E20C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioSampleBuffer.cpp"; path = "../../../../modules/juce_audio_basics/buffers/juce_AudioSampleBuffer.cpp"; sourceTree = "SOURCE_ROOT"; }; + BC4827D57EDF30E1886FCEF4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Random.cpp"; path = "../../../../modules/juce_core/maths/juce_Random.cpp"; sourceTree = "SOURCE_ROOT"; }; + BC6C5A22BC49D1F16B797A02 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MemoryOutputStream.h"; path = "../../../../modules/juce_core/streams/juce_MemoryOutputStream.h"; sourceTree = "SOURCE_ROOT"; }; + BC94E7AC0B57A89C259A26A8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = RenderingTestComponent.h; path = ../../Source/demos/RenderingTestComponent.h; sourceTree = "SOURCE_ROOT"; }; + BC966E4E8DE070E482B296C6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ResamplingAudioSource.cpp"; path = "../../../../modules/juce_audio_basics/sources/juce_ResamplingAudioSource.cpp"; sourceTree = "SOURCE_ROOT"; }; + BCEAC6346AB15421E3A5AB70 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ResizableEdgeComponent.h"; path = "../../../../modules/juce_gui_basics/layout/juce_ResizableEdgeComponent.h"; sourceTree = "SOURCE_ROOT"; }; + BD1E818B710742D5EC07BAE8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DrawableComposite.cpp"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawableComposite.cpp"; sourceTree = "SOURCE_ROOT"; }; + BD69603F635BE80BC99C7865 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = TreeViewDemo.cpp; path = ../../Source/demos/TreeViewDemo.cpp; sourceTree = "SOURCE_ROOT"; }; + BD7E3C305F0976D5C5395090 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileChooserDialogBox.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileChooserDialogBox.h"; sourceTree = "SOURCE_ROOT"; }; + BD84136646D8700D41BE7EA2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ImageConvolutionKernel.cpp"; path = "../../../../modules/juce_graphics/images/juce_ImageConvolutionKernel.cpp"; sourceTree = "SOURCE_ROOT"; }; + BDC0E815578ED04901FB9251 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_HyperlinkButton.cpp"; path = "../../../../modules/juce_gui_basics/buttons/juce_HyperlinkButton.cpp"; sourceTree = "SOURCE_ROOT"; }; + BE4673AB9542C19D1C1C3A63 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ModalComponentManager.h"; path = "../../../../modules/juce_gui_basics/components/juce_ModalComponentManager.h"; sourceTree = "SOURCE_ROOT"; }; + BE95C8978503BFA15B38D3C4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PNGLoader.cpp"; path = "../../../../modules/juce_graphics/image_formats/juce_PNGLoader.cpp"; sourceTree = "SOURCE_ROOT"; }; + BECF3DC9A5405B9856DEF975 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ios_Audio.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_ios_Audio.cpp"; sourceTree = "SOURCE_ROOT"; }; + BF2093D486040BEC64210EBB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ColourSelector.h"; path = "../../../../modules/juce_gui_extra/misc/juce_ColourSelector.h"; sourceTree = "SOURCE_ROOT"; }; + BF59C96BC3BCB29CCB421861 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_graphics.h"; path = "../../../../modules/juce_graphics/juce_graphics.h"; sourceTree = "SOURCE_ROOT"; }; + BF6F272194D16055D6A90D94 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ComponentListener.cpp"; path = "../../../../modules/juce_gui_basics/components/juce_ComponentListener.cpp"; sourceTree = "SOURCE_ROOT"; }; + BF76B8C5007732311AF50543 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RectangleList.cpp"; path = "../../../../modules/juce_graphics/geometry/juce_RectangleList.cpp"; sourceTree = "SOURCE_ROOT"; }; + C03AF9257B94504D7270416A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ImagePreviewComponent.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_ImagePreviewComponent.h"; sourceTree = "SOURCE_ROOT"; }; + C0608375ACE89B422431E9A9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ApplicationCommandManager.h"; path = "../../../../modules/juce_gui_basics/commands/juce_ApplicationCommandManager.h"; sourceTree = "SOURCE_ROOT"; }; + C069C5FCE1539E9F85C7F29E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FilenameComponent.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FilenameComponent.h"; sourceTree = "SOURCE_ROOT"; }; + C07BEF22C24DD225C5D0940E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MD5.cpp"; path = "../../../../modules/juce_cryptography/hashing/juce_MD5.cpp"; sourceTree = "SOURCE_ROOT"; }; + C0E38F040D44C1474E42753A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = MainDemoWindow.h; path = ../../Source/MainDemoWindow.h; sourceTree = "SOURCE_ROOT"; }; + C1A15473893B354642F7531A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_HeapBlock.h"; path = "../../../../modules/juce_core/memory/juce_HeapBlock.h"; sourceTree = "SOURCE_ROOT"; }; + C2072DE0D1FF6AA90A700D25 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_gui_extra.mm"; path = "../../../../modules/juce_gui_extra/juce_gui_extra.mm"; sourceTree = "SOURCE_ROOT"; }; + C20DAAC0E23CCCB8FF64DFED = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ChildProcess.cpp"; path = "../../../../modules/juce_core/threads/juce_ChildProcess.cpp"; sourceTree = "SOURCE_ROOT"; }; + C2692BB8791ADE59158D9F21 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SplashScreen.h"; path = "../../../../modules/juce_gui_extra/misc/juce_SplashScreen.h"; sourceTree = "SOURCE_ROOT"; }; + C26D5CE23205932DA1062C85 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DynamicLibrary.h"; path = "../../../../modules/juce_core/threads/juce_DynamicLibrary.h"; sourceTree = "SOURCE_ROOT"; }; + C2AFCF5805D239DF9F9DE2D3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CharPointer_UTF8.h"; path = "../../../../modules/juce_core/text/juce_CharPointer_UTF8.h"; sourceTree = "SOURCE_ROOT"; }; + C2D1EE14670950990F0769B7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TimeSliceThread.cpp"; path = "../../../../modules/juce_core/threads/juce_TimeSliceThread.cpp"; sourceTree = "SOURCE_ROOT"; }; + C2E3B2EC0F1EB46349FBAF63 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ValueTree.h"; path = "../../../../modules/juce_data_structures/values/juce_ValueTree.h"; sourceTree = "SOURCE_ROOT"; }; + C30EE4EFDB359E2A9D58F677 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RectanglePlacement.cpp"; path = "../../../../modules/juce_graphics/placement/juce_RectanglePlacement.cpp"; sourceTree = "SOURCE_ROOT"; }; + C355FD0ABB078A342BF6A6AA = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ReverbAudioSource.h"; path = "../../../../modules/juce_audio_basics/sources/juce_ReverbAudioSource.h"; sourceTree = "SOURCE_ROOT"; }; + C3A77F115D67C0E24C65FC45 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_CodeEditorComponent.cpp"; path = "../../../../modules/juce_gui_extra/code_editor/juce_CodeEditorComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + C3E0EB7CDA04886FA8323C17 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_GlyphArrangement.h"; path = "../../../../modules/juce_graphics/fonts/juce_GlyphArrangement.h"; sourceTree = "SOURCE_ROOT"; }; + C3F7B701463826A93DFE5587 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_UndoManager.h"; path = "../../../../modules/juce_data_structures/undomanager/juce_UndoManager.h"; sourceTree = "SOURCE_ROOT"; }; + C4169C8CB5406154E9BCE2B2 = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreAudio.framework; path = System/Library/Frameworks/CoreAudio.framework; sourceTree = SDKROOT; }; + C427F2763EEE1F1C11E8EAF9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_KnownPluginList.cpp"; path = "../../../../modules/juce_audio_processors/scanning/juce_KnownPluginList.cpp"; sourceTree = "SOURCE_ROOT"; }; + C4A730DEDDA33FA9A06CDA82 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Message.h"; path = "../../../../modules/juce_events/messages/juce_Message.h"; sourceTree = "SOURCE_ROOT"; }; + C4C6D6B8731B400B29A3A4E7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TabbedComponent.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_TabbedComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + C50F17EA37434C3C7B52C3BD = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Drawable.cpp"; path = "../../../../modules/juce_gui_basics/drawables/juce_Drawable.cpp"; sourceTree = "SOURCE_ROOT"; }; + C526F791D3168AC0E87C2DD9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ToneGeneratorAudioSource.cpp"; path = "../../../../modules/juce_audio_basics/sources/juce_ToneGeneratorAudioSource.cpp"; sourceTree = "SOURCE_ROOT"; }; + C583836F43E174944C6098FC = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileInputSource.cpp"; path = "../../../../modules/juce_core/streams/juce_FileInputSource.cpp"; sourceTree = "SOURCE_ROOT"; }; + C5CF3A35D0896F95596FAC4C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_GZIPCompressorOutputStream.h"; path = "../../../../modules/juce_core/zip/juce_GZIPCompressorOutputStream.h"; sourceTree = "SOURCE_ROOT"; }; + C5FF20572B734C4EE8F204B6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_SHA256.cpp"; path = "../../../../modules/juce_cryptography/hashing/juce_SHA256.cpp"; sourceTree = "SOURCE_ROOT"; }; + C66E08F5118F529FC623733E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CallbackMessage.h"; path = "../../../../modules/juce_events/messages/juce_CallbackMessage.h"; sourceTree = "SOURCE_ROOT"; }; + C766591C3E8CB978D6026F56 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_InterProcessLock.h"; path = "../../../../modules/juce_core/threads/juce_InterProcessLock.h"; sourceTree = "SOURCE_ROOT"; }; + C7835B9A7DA88BE84F1366E6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Expression.h"; path = "../../../../modules/juce_core/maths/juce_Expression.h"; sourceTree = "SOURCE_ROOT"; }; + C7DAB2D405C907CDA83C2924 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioProcessorEditor.cpp"; path = "../../../../modules/juce_audio_processors/processors/juce_AudioProcessorEditor.cpp"; sourceTree = "SOURCE_ROOT"; }; + C7EBDC32959BE4405ECE2148 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ImageButton.cpp"; path = "../../../../modules/juce_gui_basics/buttons/juce_ImageButton.cpp"; sourceTree = "SOURCE_ROOT"; }; + C87942E350F974B22047D457 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = WebBrowserDemo.cpp; path = ../../Source/demos/WebBrowserDemo.cpp; sourceTree = "SOURCE_ROOT"; }; + C8E9F901721D86767BD458B3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileBrowserComponent.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileBrowserComponent.h"; sourceTree = "SOURCE_ROOT"; }; + C92A08C836B3326D6EDB14E6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_mac_CoreMidi.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_mac_CoreMidi.cpp"; sourceTree = "SOURCE_ROOT"; }; + C94D5056497677CC3FCB5AAD = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Logger.cpp"; path = "../../../../modules/juce_core/logging/juce_Logger.cpp"; sourceTree = "SOURCE_ROOT"; }; + C9AEAD8B2366F9508E63A178 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Component.h"; path = "../../../../modules/juce_gui_basics/components/juce_Component.h"; sourceTree = "SOURCE_ROOT"; }; + C9E621CAC46AE272EFB807E3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MemoryBlock.cpp"; path = "../../../../modules/juce_core/memory/juce_MemoryBlock.cpp"; sourceTree = "SOURCE_ROOT"; }; + CA5844E270055529F3F3818F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Process.h"; path = "../../../../modules/juce_core/threads/juce_Process.h"; sourceTree = "SOURCE_ROOT"; }; + CA799D1FF79E811275318304 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_SystemStats.cpp"; path = "../../../../modules/juce_core/native/juce_linux_SystemStats.cpp"; sourceTree = "SOURCE_ROOT"; }; + CAF961A7AFDB2830B419214C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileSearchPathListComponent.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileSearchPathListComponent.h"; sourceTree = "SOURCE_ROOT"; }; + CB179EBD4C1AB9F3F59E9D4A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Synthesiser.cpp"; path = "../../../../modules/juce_audio_basics/synthesisers/juce_Synthesiser.cpp"; sourceTree = "SOURCE_ROOT"; }; + CB68DC2B2EA837D6869AAACD = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TableHeaderComponent.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_TableHeaderComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + CC0BC6AC42809A4F4FA21452 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Colours.h"; path = "../../../../modules/juce_graphics/colour/juce_Colours.h"; sourceTree = "SOURCE_ROOT"; }; + CC1307C0AEE134EEA46F68EA = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DrawableImage.cpp"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawableImage.cpp"; sourceTree = "SOURCE_ROOT"; }; + CCB4250C97008BF3E5F12D0B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ComboBox.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_ComboBox.h"; sourceTree = "SOURCE_ROOT"; }; + CCD6FA03199F37A9CCA6340D = { isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_cryptography/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + CCE2933FEB395826A5710C6F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioProcessorPlayer.h"; path = "../../../../modules/juce_audio_utils/players/juce_AudioProcessorPlayer.h"; sourceTree = "SOURCE_ROOT"; }; + CCFBB22AC379DC3B3A839CA1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MouseCursor.cpp"; path = "../../../../modules/juce_gui_basics/mouse/juce_MouseCursor.cpp"; sourceTree = "SOURCE_ROOT"; }; + CD20E020C903C1E3AE12A1CF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AudioDemoSynthPage.h; path = ../../Source/demos/AudioDemoSynthPage.h; sourceTree = "SOURCE_ROOT"; }; + CD2AEFC254C92A49F2D5DA64 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_KeyPress.cpp"; path = "../../../../modules/juce_gui_basics/keyboard/juce_KeyPress.cpp"; sourceTree = "SOURCE_ROOT"; }; + CD9EDF2EE190AFB02CCC3F49 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_StretchableLayoutManager.h"; path = "../../../../modules/juce_gui_basics/layout/juce_StretchableLayoutManager.h"; sourceTree = "SOURCE_ROOT"; }; + CE28146B186C11F00BCBBBBD = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Identifier.h"; path = "../../../../modules/juce_core/text/juce_Identifier.h"; sourceTree = "SOURCE_ROOT"; }; + CE3DF5A017336CABFDD6926A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_WindowsMediaAudioFormat.h"; path = "../../../../modules/juce_audio_formats/codecs/juce_WindowsMediaAudioFormat.h"; sourceTree = "SOURCE_ROOT"; }; + CE66BAB575B13375E1EE937C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MenuBarModel.h"; path = "../../../../modules/juce_gui_basics/menus/juce_MenuBarModel.h"; sourceTree = "SOURCE_ROOT"; }; + CE882EE8C05AC3A809E41332 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_StringPool.cpp"; path = "../../../../modules/juce_core/text/juce_StringPool.cpp"; sourceTree = "SOURCE_ROOT"; }; + CEAE0C8168A4E71C6D607659 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Registry.cpp"; path = "../../../../modules/juce_core/native/juce_win32_Registry.cpp"; sourceTree = "SOURCE_ROOT"; }; + CEF96D559AAB6D61FB8A0288 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_SystemStats.cpp"; path = "../../../../modules/juce_core/native/juce_android_SystemStats.cpp"; sourceTree = "SOURCE_ROOT"; }; + CF0DB23C5950CB619CF8D812 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_mac_CarbonViewWrapperComponent.h"; path = "../../../../modules/juce_gui_extra/native/juce_mac_CarbonViewWrapperComponent.h"; sourceTree = "SOURCE_ROOT"; }; + CF15EC19906A7A7C3D9E2407 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DynamicObject.cpp"; path = "../../../../modules/juce_core/containers/juce_DynamicObject.cpp"; sourceTree = "SOURCE_ROOT"; }; + CF2A1897A3C5610A282A2713 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ComponentMovementWatcher.h"; path = "../../../../modules/juce_gui_basics/layout/juce_ComponentMovementWatcher.h"; sourceTree = "SOURCE_ROOT"; }; + CF6533A53CCA75A2FAFACAB8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ImageFileFormat.h"; path = "../../../../modules/juce_graphics/images/juce_ImageFileFormat.h"; sourceTree = "SOURCE_ROOT"; }; + CFB2E2DFBCBAA9BF91E7CB35 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Toolbar.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_Toolbar.h"; sourceTree = "SOURCE_ROOT"; }; + CFF27E108381EC6BA758EE7E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Files.cpp"; path = "../../../../modules/juce_core/native/juce_android_Files.cpp"; sourceTree = "SOURCE_ROOT"; }; + D0B9859FCC534C510C7F37A7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PixelFormats.h"; path = "../../../../modules/juce_graphics/colour/juce_PixelFormats.h"; sourceTree = "SOURCE_ROOT"; }; + D0C3588FF8EF229B8F0CBCA8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = AudioDemoLatencyPage.cpp; path = ../../Source/demos/AudioDemoLatencyPage.cpp; sourceTree = "SOURCE_ROOT"; }; + D1CADE1C7E74F37D0D57575B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GlyphArrangement.cpp"; path = "../../../../modules/juce_graphics/fonts/juce_GlyphArrangement.cpp"; sourceTree = "SOURCE_ROOT"; }; + D226630AEE6B273B6B1ED622 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_UIViewComponent.h"; path = "../../../../modules/juce_gui_extra/embedding/juce_UIViewComponent.h"; sourceTree = "SOURCE_ROOT"; }; + D25A334218A3D87F4D0BBD15 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileLogger.cpp"; path = "../../../../modules/juce_core/logging/juce_FileLogger.cpp"; sourceTree = "SOURCE_ROOT"; }; + D27A3A58DCC37B5EFC3AD745 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AbstractFifo.h"; path = "../../../../modules/juce_core/containers/juce_AbstractFifo.h"; sourceTree = "SOURCE_ROOT"; }; + D27D41D4A06E286FDBDF7549 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MouseCursor.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_MouseCursor.h"; sourceTree = "SOURCE_ROOT"; }; + D2C40CDF46D894BFC72BDC56 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OpenGLHelpers.h"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLHelpers.h"; sourceTree = "SOURCE_ROOT"; }; + D2F161366612A4CDA6372113 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Vector3D.h"; path = "../../../../modules/juce_opengl/opengl/juce_Vector3D.h"; sourceTree = "SOURCE_ROOT"; }; + D2F7081BE9A6E24BA7CD1A46 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioThumbnailCache.cpp"; path = "../../../../modules/juce_audio_utils/gui/juce_AudioThumbnailCache.cpp"; sourceTree = "SOURCE_ROOT"; }; + D33142A214D7AC7A8ED27E4A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DialogWindow.h"; path = "../../../../modules/juce_gui_basics/windows/juce_DialogWindow.h"; sourceTree = "SOURCE_ROOT"; }; + D33EBA9793C56D73135BD1F0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RelativeParallelogram.cpp"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativeParallelogram.cpp"; sourceTree = "SOURCE_ROOT"; }; + D3AD73A360B24493ECC4E092 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_NSViewComponentPeer.mm"; path = "../../../../modules/juce_gui_basics/native/juce_mac_NSViewComponentPeer.mm"; sourceTree = "SOURCE_ROOT"; }; + D3BA1978EF5806DF8F3B32ED = { isa = PBXFileReference; lastKnownFileType = file.wav; name = cello.wav; path = "../../Binary Data/cello.wav"; sourceTree = "SOURCE_ROOT"; }; + D45EF873A4BD7D0E56274D79 = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreMIDI.framework; path = System/Library/Frameworks/CoreMIDI.framework; sourceTree = SDKROOT; }; + D4CA129DE8BC9F6EDC2BCAD2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = ApplicationStartup.cpp; path = ../../Source/ApplicationStartup.cpp; sourceTree = "SOURCE_ROOT"; }; + D4DC657E222FE2BDE92EC58E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PathStrokeType.h"; path = "../../../../modules/juce_graphics/geometry/juce_PathStrokeType.h"; sourceTree = "SOURCE_ROOT"; }; + D57651845D6D9438DEA62F98 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LeakedObjectDetector.h"; path = "../../../../modules/juce_core/memory/juce_LeakedObjectDetector.h"; sourceTree = "SOURCE_ROOT"; }; + D5DE603FFC184C590E2A6678 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioCDBurner.h"; path = "../../../../modules/juce_audio_devices/audio_cd/juce_AudioCDBurner.h"; sourceTree = "SOURCE_ROOT"; }; + D602AE751C3C12A6458FCCD5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ResizableBorderComponent.h"; path = "../../../../modules/juce_gui_basics/layout/juce_ResizableBorderComponent.h"; sourceTree = "SOURCE_ROOT"; }; + D66048AF1E05FF836B2A813A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_OpenGLComponent.cpp"; path = "../../../../modules/juce_opengl/native/juce_win32_OpenGLComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + D6C9614D1C6493DBEE370646 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileBasedDocument.cpp"; path = "../../../../modules/juce_gui_extra/documents/juce_FileBasedDocument.cpp"; sourceTree = "SOURCE_ROOT"; }; + D6D0F076F54C7D669A9717C9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OpenGLComponent.h"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLComponent.h"; sourceTree = "SOURCE_ROOT"; }; + D7239D5B984E07808E2DB28C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OpenGLHelpers.cpp"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLHelpers.cpp"; sourceTree = "SOURCE_ROOT"; }; + D7E6E92AA32B7D51489FD256 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ComponentBoundsConstrainer.h"; path = "../../../../modules/juce_gui_basics/layout/juce_ComponentBoundsConstrainer.h"; sourceTree = "SOURCE_ROOT"; }; + D8081154AA3072D2F2C4B625 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_posix_SharedCode.h"; path = "../../../../modules/juce_core/native/juce_posix_SharedCode.h"; sourceTree = "SOURCE_ROOT"; }; + D866C4735BF1EF0CA24FC1FB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Draggable3DOrientation.h"; path = "../../../../modules/juce_opengl/opengl/juce_Draggable3DOrientation.h"; sourceTree = "SOURCE_ROOT"; }; + D8AFC87A918360FFC9D96BE5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Atomic.h"; path = "../../../../modules/juce_core/memory/juce_Atomic.h"; sourceTree = "SOURCE_ROOT"; }; + D9282DF6556197822D2BD5D4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PropertySet.cpp"; path = "../../../../modules/juce_core/containers/juce_PropertySet.cpp"; sourceTree = "SOURCE_ROOT"; }; + DA0D464BE6E90C3668AD7C73 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_FileChooser.mm"; path = "../../../../modules/juce_gui_basics/native/juce_mac_FileChooser.mm"; sourceTree = "SOURCE_ROOT"; }; + DA2FCB30EE2A41085FF93B9B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Files.cpp"; path = "../../../../modules/juce_core/native/juce_win32_Files.cpp"; sourceTree = "SOURCE_ROOT"; }; + DB507A1F7BB7489344FF90A9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Range.h"; path = "../../../../modules/juce_core/maths/juce_Range.h"; sourceTree = "SOURCE_ROOT"; }; + DD40A3E06CA320D95F3924BA = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_StretchableLayoutResizerBar.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_StretchableLayoutResizerBar.cpp"; sourceTree = "SOURCE_ROOT"; }; + DDEC339D244553357E234C92 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_DirectSound.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_win32_DirectSound.cpp"; sourceTree = "SOURCE_ROOT"; }; + DE7617FB215CD22983E7D736 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_HyperlinkButton.h"; path = "../../../../modules/juce_gui_basics/buttons/juce_HyperlinkButton.h"; sourceTree = "SOURCE_ROOT"; }; + DE80C724F35B1464853FDE9E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SubregionStream.h"; path = "../../../../modules/juce_core/streams/juce_SubregionStream.h"; sourceTree = "SOURCE_ROOT"; }; + DEA38275A65473112CD34252 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TreeView.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_TreeView.h"; sourceTree = "SOURCE_ROOT"; }; + DEB23C98FEC261260F63B6A4 = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioToolbox.framework; path = System/Library/Frameworks/AudioToolbox.framework; sourceTree = SDKROOT; }; + DED6D04CFED991C5924B78F0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MD5.h"; path = "../../../../modules/juce_cryptography/hashing/juce_MD5.h"; sourceTree = "SOURCE_ROOT"; }; + DF2D86EEA8031481C1FD08B2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileTreeComponent.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileTreeComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + DF47E8197FF5A9309C062C61 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Justification.cpp"; path = "../../../../modules/juce_graphics/placement/juce_Justification.cpp"; sourceTree = "SOURCE_ROOT"; }; + DF590CD70352A30FA3BD9835 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_SystemTrayIcon.cpp"; path = "../../../../modules/juce_gui_extra/native/juce_linux_SystemTrayIcon.cpp"; sourceTree = "SOURCE_ROOT"; }; + E0AE248F52C70AA1DEA1A5A1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiOutput.h"; path = "../../../../modules/juce_audio_devices/midi_io/juce_MidiOutput.h"; sourceTree = "SOURCE_ROOT"; }; + E249D6583995E0E6D0B3EADF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioSourcePlayer.h"; path = "../../../../modules/juce_audio_devices/sources/juce_AudioSourcePlayer.h"; sourceTree = "SOURCE_ROOT"; }; + E26E3AC933F70B56B7B83EFA = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MACAddress.cpp"; path = "../../../../modules/juce_core/network/juce_MACAddress.cpp"; sourceTree = "SOURCE_ROOT"; }; + E274BFB25D87D93EDBC23114 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OggVorbisAudioFormat.h"; path = "../../../../modules/juce_audio_formats/codecs/juce_OggVorbisAudioFormat.h"; sourceTree = "SOURCE_ROOT"; }; + E34B2BCD14634ED3BC9F5431 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioProcessorGraph.h"; path = "../../../../modules/juce_audio_processors/processors/juce_AudioProcessorGraph.h"; sourceTree = "SOURCE_ROOT"; }; + E3D24CD61D75922457DB9642 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Midi.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_win32_Midi.cpp"; sourceTree = "SOURCE_ROOT"; }; + E48E2824CED9933934127522 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BasicNativeHeaders.h"; path = "../../../../modules/juce_core/native/juce_BasicNativeHeaders.h"; sourceTree = "SOURCE_ROOT"; }; + E6448B3F03DD2B41519DF93D = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = DiscRecording.framework; path = System/Library/Frameworks/DiscRecording.framework; sourceTree = SDKROOT; }; + D119A3871626EC2B8EFCB0D4 = { isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = JuceDemo.app; sourceTree = "BUILT_PRODUCTS_DIR"; }; + DEE1FC30E2FBB97921616CA9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Font.cpp"; path = "../../../../modules/juce_graphics/fonts/juce_Font.cpp"; sourceTree = "SOURCE_ROOT"; }; + DF3B7E1BC0AF0C826C47745B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ResizableWindow.h"; path = "../../../../modules/juce_gui_basics/windows/juce_ResizableWindow.h"; sourceTree = "SOURCE_ROOT"; }; + DFEAB699C98B89FF0B85F557 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_DirectWriteTypeLayout.cpp"; path = "../../../../modules/juce_graphics/native/juce_win32_DirectWriteTypeLayout.cpp"; sourceTree = "SOURCE_ROOT"; }; + DFF6BF0BB64714A494A25E93 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RSAKey.h"; path = "../../../../modules/juce_cryptography/encryption/juce_RSAKey.h"; sourceTree = "SOURCE_ROOT"; }; + E15F577E82B2E12597447472 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ApplicationBase.h"; path = "../../../../modules/juce_events/messages/juce_ApplicationBase.h"; sourceTree = "SOURCE_ROOT"; }; + E2732267CD7C0C3BDB17456A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BooleanPropertyComponent.h"; path = "../../../../modules/juce_gui_basics/properties/juce_BooleanPropertyComponent.h"; sourceTree = "SOURCE_ROOT"; }; + E38DE271B32DCC95E52C72DA = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DrawableButton.h"; path = "../../../../modules/juce_gui_basics/buttons/juce_DrawableButton.h"; sourceTree = "SOURCE_ROOT"; }; + E3FC888CC9FAD650C469ACC5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TextButton.cpp"; path = "../../../../modules/juce_gui_basics/buttons/juce_TextButton.cpp"; sourceTree = "SOURCE_ROOT"; }; + E453E312D607E60FAA6D1BF0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MultiDocumentPanel.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_MultiDocumentPanel.cpp"; sourceTree = "SOURCE_ROOT"; }; + E46977801F19277F4D3B324B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OpenGLImage.cpp"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLImage.cpp"; sourceTree = "SOURCE_ROOT"; }; + E48615F1F7D8213F6DC24FC9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ThreadPool.h"; path = "../../../../modules/juce_core/threads/juce_ThreadPool.h"; sourceTree = "SOURCE_ROOT"; }; + E5DC4602843749A071B17576 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Slider.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_Slider.h"; sourceTree = "SOURCE_ROOT"; }; + E6B13A51A01032961340735D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_StringPairArray.cpp"; path = "../../../../modules/juce_core/text/juce_StringPairArray.cpp"; sourceTree = "SOURCE_ROOT"; }; + E6C582E67DC0C4D0CCA18166 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ShapeButton.h"; path = "../../../../modules/juce_gui_basics/buttons/juce_ShapeButton.h"; sourceTree = "SOURCE_ROOT"; }; + E71C493A0E10D1AE4A3DB2AB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AffineTransform.h"; path = "../../../../modules/juce_graphics/geometry/juce_AffineTransform.h"; sourceTree = "SOURCE_ROOT"; }; + E7AECF0B52A9554442685859 = { isa = PBXFileReference; lastKnownFileType = file.xml; name = "demo table data.xml"; path = "../../Binary Data/demo table data.xml"; sourceTree = "SOURCE_ROOT"; }; + E86CBC37B034041BFF5A10DB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FillType.h"; path = "../../../../modules/juce_graphics/colour/juce_FillType.h"; sourceTree = "SOURCE_ROOT"; }; + E8FE41E21AD1029DD709FD7C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ModifierKeys.h"; path = "../../../../modules/juce_gui_basics/keyboard/juce_ModifierKeys.h"; sourceTree = "SOURCE_ROOT"; }; + E94E773858B05D719E61DD6A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ChannelRemappingAudioSource.h"; path = "../../../../modules/juce_audio_basics/sources/juce_ChannelRemappingAudioSource.h"; sourceTree = "SOURCE_ROOT"; }; + E963816786695359C91EF35D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TooltipClient.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_TooltipClient.h"; sourceTree = "SOURCE_ROOT"; }; + E9C3901F0B4AC410025D2086 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TextLayout.h"; path = "../../../../modules/juce_graphics/fonts/juce_TextLayout.h"; sourceTree = "SOURCE_ROOT"; }; + EA1313A79BF10BE60238F3D5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LassoComponent.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_LassoComponent.h"; sourceTree = "SOURCE_ROOT"; }; + EA20E7FB414DD777C1618333 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioIODeviceType.h"; path = "../../../../modules/juce_audio_devices/audio_io/juce_AudioIODeviceType.h"; sourceTree = "SOURCE_ROOT"; }; + EACB4129861122ABC1A2BB37 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OutputStream.cpp"; path = "../../../../modules/juce_core/streams/juce_OutputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; + EADE149294A3A3509EC61E6B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_audio_formats.mm"; path = "../../../../modules/juce_audio_formats/juce_audio_formats.mm"; sourceTree = "SOURCE_ROOT"; }; + EAE786E1125C492A7A8B1594 = { isa = PBXFileReference; lastKnownFileType = file.zip; name = icons.zip; path = "../../Binary Data/icons.zip"; sourceTree = "SOURCE_ROOT"; }; + EB902A37F3AA5BC62D523F5B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ApplicationCommandTarget.h"; path = "../../../../modules/juce_gui_basics/commands/juce_ApplicationCommandTarget.h"; sourceTree = "SOURCE_ROOT"; }; + EB9E8921A8D36EDD7FF3245B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileFilter.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileFilter.h"; sourceTree = "SOURCE_ROOT"; }; + EC180AD91D1B068D7A8F33BB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DirectoryContentsDisplayComponent.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_DirectoryContentsDisplayComponent.h"; sourceTree = "SOURCE_ROOT"; }; + EC89003BF30329181BB3EA4B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Quaternion.h"; path = "../../../../modules/juce_opengl/opengl/juce_Quaternion.h"; sourceTree = "SOURCE_ROOT"; }; + EC93857F367028441A067F45 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TooltipWindow.cpp"; path = "../../../../modules/juce_gui_basics/windows/juce_TooltipWindow.cpp"; sourceTree = "SOURCE_ROOT"; }; + EC97B274D075920B2490E0D8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CriticalSection.h"; path = "../../../../modules/juce_core/threads/juce_CriticalSection.h"; sourceTree = "SOURCE_ROOT"; }; + ECCEB7E5D6B18F1376E34EDC = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileChooser.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileChooser.h"; sourceTree = "SOURCE_ROOT"; }; + ECEFF5A78873B5B388046E7A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Messaging.cpp"; path = "../../../../modules/juce_events/native/juce_win32_Messaging.cpp"; sourceTree = "SOURCE_ROOT"; }; + ED467279290C0AA942FB2B27 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OggVorbisAudioFormat.cpp"; path = "../../../../modules/juce_audio_formats/codecs/juce_OggVorbisAudioFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; + ED9A2289AECFD9B928A9A08A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_IIRFilter.h"; path = "../../../../modules/juce_audio_basics/effects/juce_IIRFilter.h"; sourceTree = "SOURCE_ROOT"; }; + ED9FAEA9116C568942BAD000 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_ios_OpenGLComponent.mm"; path = "../../../../modules/juce_opengl/native/juce_ios_OpenGLComponent.mm"; sourceTree = "SOURCE_ROOT"; }; + EDDA4ADA880E3B78143801D0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_WASAPI.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_win32_WASAPI.cpp"; sourceTree = "SOURCE_ROOT"; }; + EDDDD60231231B8221711145 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MouseListener.cpp"; path = "../../../../modules/juce_gui_basics/mouse/juce_MouseListener.cpp"; sourceTree = "SOURCE_ROOT"; }; + EE2DACF73E083928ABDDA63B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DirectoryIterator.h"; path = "../../../../modules/juce_core/files/juce_DirectoryIterator.h"; sourceTree = "SOURCE_ROOT"; }; + EEA3A060739CA049C1339B9F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioCDReader.cpp"; path = "../../../../modules/juce_audio_devices/audio_cd/juce_AudioCDReader.cpp"; sourceTree = "SOURCE_ROOT"; }; + EEC74D7DAF96D7ADBC917976 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ChannelRemappingAudioSource.cpp"; path = "../../../../modules/juce_audio_basics/sources/juce_ChannelRemappingAudioSource.cpp"; sourceTree = "SOURCE_ROOT"; }; + F10EEBAD564A55F50CEE7181 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = AudioDemoPlaybackPage.cpp; path = ../../Source/demos/AudioDemoPlaybackPage.cpp; sourceTree = "SOURCE_ROOT"; }; + F123556B79ADA02F5E549727 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ApplicationProperties.cpp"; path = "../../../../modules/juce_data_structures/app_properties/juce_ApplicationProperties.cpp"; sourceTree = "SOURCE_ROOT"; }; + F1EEED4DC97678861086B282 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PerformanceCounter.cpp"; path = "../../../../modules/juce_core/time/juce_PerformanceCounter.cpp"; sourceTree = "SOURCE_ROOT"; }; + F242ACDC3C1ED82039C45915 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ActionBroadcaster.cpp"; path = "../../../../modules/juce_events/broadcasters/juce_ActionBroadcaster.cpp"; sourceTree = "SOURCE_ROOT"; }; + F250E301B85CB6140FC236A6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioSampleBuffer.h"; path = "../../../../modules/juce_audio_basics/buffers/juce_AudioSampleBuffer.h"; sourceTree = "SOURCE_ROOT"; }; + F26F7C7D6D9EBA2693914AA1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ImagePreviewComponent.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_ImagePreviewComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + F28314027C0D8E36A9FE43E3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_CameraDevice.mm"; path = "../../../../modules/juce_video/native/juce_mac_CameraDevice.mm"; sourceTree = "SOURCE_ROOT"; }; + F315F477DE84E05E9E440ADA = { isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_audio_basics/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + F339FB092FFFBB9B95E7F732 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Audio.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_android_Audio.cpp"; sourceTree = "SOURCE_ROOT"; }; + F48AE8E1A9A1608BEB4C16A9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ScrollBar.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_ScrollBar.cpp"; sourceTree = "SOURCE_ROOT"; }; + F49BD909BB1DD4BE7B669FA6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_WavAudioFormat.h"; path = "../../../../modules/juce_audio_formats/codecs/juce_WavAudioFormat.h"; sourceTree = "SOURCE_ROOT"; }; + F4C50E1A3DC066396613C401 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_WildcardFileFilter.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_WildcardFileFilter.h"; sourceTree = "SOURCE_ROOT"; }; + F534B4A3A4E46A8311A44649 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Toolbar.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_Toolbar.cpp"; sourceTree = "SOURCE_ROOT"; }; + F53E1E312FBE025F836AA718 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DirectoryIterator.cpp"; path = "../../../../modules/juce_core/files/juce_DirectoryIterator.cpp"; sourceTree = "SOURCE_ROOT"; }; + F5B3E5C6F10A97AEA5786AC5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioTransportSource.cpp"; path = "../../../../modules/juce_audio_devices/sources/juce_AudioTransportSource.cpp"; sourceTree = "SOURCE_ROOT"; }; + F664E58A0B3899FB98CF8E1C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ComponentAnimator.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_ComponentAnimator.cpp"; sourceTree = "SOURCE_ROOT"; }; + F6AE140F7CE1B08B52A8C8AF = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TextPropertyComponent.cpp"; path = "../../../../modules/juce_gui_basics/properties/juce_TextPropertyComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + F6D1D5FD437BF40AC208AA2E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileChooser.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileChooser.cpp"; sourceTree = "SOURCE_ROOT"; }; + F76944FF282DB2FB4FB1B229 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Time.h"; path = "../../../../modules/juce_core/time/juce_Time.h"; sourceTree = "SOURCE_ROOT"; }; + F796E49F8209912C1E8E0ADC = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ButtonPropertyComponent.cpp"; path = "../../../../modules/juce_gui_basics/properties/juce_ButtonPropertyComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + F7BA444D0130F3613252D00D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_AudioCDReader.mm"; path = "../../../../modules/juce_audio_devices/native/juce_mac_AudioCDReader.mm"; sourceTree = "SOURCE_ROOT"; }; + F84DBFF75F5334EA86AB2E37 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_CPlusPlusCodeTokeniser.cpp"; path = "../../../../modules/juce_gui_extra/code_editor/juce_CPlusPlusCodeTokeniser.cpp"; sourceTree = "SOURCE_ROOT"; }; + F84F19D5BEF7E7AE00C8CDD7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AbstractFifo.cpp"; path = "../../../../modules/juce_core/containers/juce_AbstractFifo.cpp"; sourceTree = "SOURCE_ROOT"; }; + F87BBC8FD2374628CFBC2EA6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = AudioDemoSetupPage.cpp; path = ../../Source/demos/AudioDemoSetupPage.cpp; sourceTree = "SOURCE_ROOT"; }; + F8FB27C3434BB255CED42861 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_MouseCursor.mm"; path = "../../../../modules/juce_gui_basics/native/juce_mac_MouseCursor.mm"; sourceTree = "SOURCE_ROOT"; }; + F93E02181A90B71B0C16629F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CameraDevice.h"; path = "../../../../modules/juce_video/capture/juce_CameraDevice.h"; sourceTree = "SOURCE_ROOT"; }; + F9474BBBA977F050C5C66E61 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioIODevice.cpp"; path = "../../../../modules/juce_audio_devices/audio_io/juce_AudioIODevice.cpp"; sourceTree = "SOURCE_ROOT"; }; + F97E60F478662C7A4B413E5D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioFormatManager.h"; path = "../../../../modules/juce_audio_formats/format/juce_AudioFormatManager.h"; sourceTree = "SOURCE_ROOT"; }; + F9FE574AC4D30AE44C0DF98C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Socket.h"; path = "../../../../modules/juce_core/network/juce_Socket.h"; sourceTree = "SOURCE_ROOT"; }; + FABF3148A2F5D3ACD48E8838 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_LowLevelGraphicsSoftwareRenderer.cpp"; path = "../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsSoftwareRenderer.cpp"; sourceTree = "SOURCE_ROOT"; }; + FAC8B4FB05C57F3461E3FE30 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ThreadWithProgressWindow.h"; path = "../../../../modules/juce_gui_basics/windows/juce_ThreadWithProgressWindow.h"; sourceTree = "SOURCE_ROOT"; }; + FAD925A5A262E8ACF4F40354 = { isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_audio_utils/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + FB73EE6CD424A7543EE172D0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioUnitPluginFormat.h"; path = "../../../../modules/juce_audio_processors/format_types/juce_AudioUnitPluginFormat.h"; sourceTree = "SOURCE_ROOT"; }; + FBDA70B8FF6C6D669F9CF540 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DirectoryContentsList.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_DirectoryContentsList.h"; sourceTree = "SOURCE_ROOT"; }; + FC1201FBE79AED3FC831ABAF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TextInputTarget.h"; path = "../../../../modules/juce_gui_basics/keyboard/juce_TextInputTarget.h"; sourceTree = "SOURCE_ROOT"; }; + FC19E4B3335185A35678B597 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Sampler.cpp"; path = "../../../../modules/juce_audio_formats/sampler/juce_Sampler.cpp"; sourceTree = "SOURCE_ROOT"; }; + FC87932ECFE90EB63664B6BE = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_audio_utils.h"; path = "../../../../modules/juce_audio_utils/juce_audio_utils.h"; sourceTree = "SOURCE_ROOT"; }; + FD36FD1612A96DDE000211E0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_StretchableLayoutResizerBar.h"; path = "../../../../modules/juce_gui_basics/layout/juce_StretchableLayoutResizerBar.h"; sourceTree = "SOURCE_ROOT"; }; + FE75937BEEFDA021D7767B59 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Colour.cpp"; path = "../../../../modules/juce_graphics/colour/juce_Colour.cpp"; sourceTree = "SOURCE_ROOT"; }; + FE87322C0C3E84720083F1C5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RSAKey.cpp"; path = "../../../../modules/juce_cryptography/encryption/juce_RSAKey.cpp"; sourceTree = "SOURCE_ROOT"; }; + FE89A070890FF722F9A128C0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioProcessorGraph.cpp"; path = "../../../../modules/juce_audio_processors/processors/juce_AudioProcessorGraph.cpp"; sourceTree = "SOURCE_ROOT"; }; + FE9A5898294228EB7F439951 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OpenGLTexture.cpp"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLTexture.cpp"; sourceTree = "SOURCE_ROOT"; }; + FEA724E71E582903094A455F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TextLayout.cpp"; path = "../../../../modules/juce_graphics/fonts/juce_TextLayout.cpp"; sourceTree = "SOURCE_ROOT"; }; + FEB2CCC12BBABEEC23384FDD = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_FileChooser.cpp"; path = "../../../../modules/juce_gui_basics/native/juce_linux_FileChooser.cpp"; sourceTree = "SOURCE_ROOT"; }; + FF93CCEC386B165840328831 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RelativeCoordinatePositioner.cpp"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativeCoordinatePositioner.cpp"; sourceTree = "SOURCE_ROOT"; }; + FFAD5C56A4E4038FB532565F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_AudioCDBurner.mm"; path = "../../../../modules/juce_audio_devices/native/juce_mac_AudioCDBurner.mm"; sourceTree = "SOURCE_ROOT"; }; + FFF09A9DCDFECD32F25F0CDF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_osx_MessageQueue.h"; path = "../../../../modules/juce_events/native/juce_osx_MessageQueue.h"; sourceTree = "SOURCE_ROOT"; }; + D5607E34AA2399378CA6F72B = { isa = PBXGroup; children = ( + D0C3588FF8EF229B8F0CBCA8, + 2C48ED514887D2F673B3B1BC, + F10EEBAD564A55F50CEE7181, + 805B94425CD56EA78E0A705B, + 200550A2DDDB012E26D6D005, + 1EC913A06CFCE35C9AE2AD29, + F87BBC8FD2374628CFBC2EA6, + 38B68694E6EDD6C29D1198D7, + 2275EB468CEA505ADE14C225, + CD20E020C903C1E3AE12A1CF, + 690BE5039AADEF787D6E13D9, + 35CA3E9AEE7BC7C005653A25, + 8F37F4E9DB8E42EDF29DE166, + 8A29D461DA6C72497B49189C, + 3C35334FE9451182FE7EC2B8, + 3D11CF883EC31F74D97920D3, + 73108C67E00C3C958FFD23D4, + 83D67DD10BD2ACDC0984ADCB, + 877D61C08ADC5B13C2627327, + 94A9A7DF00C64509E9B5A337, + 81641BC45BAA99D207B153A7, + BC94E7AC0B57A89C259A26A8, + 5ED8A827D78184F2E01A5511, + 01E2555EA1347B8C8CFC438D, + BD69603F635BE80BC99C7865, + C87942E350F974B22047D457, + 6649385F220EB0B654AB61FB ); name = Demos; sourceTree = ""; }; + C2E4D2C86DFBB8F14142D379 = { isa = PBXGroup; children = ( + D3BA1978EF5806DF8F3B32ED, + E7AECF0B52A9554442685859, + EAE786E1125C492A7A8B1594, + 7551834E76E49E9114B16B2B, + A8F2E649E566EDE8D4C42F21, + 717A5E2F84E8D281325E9C1C ); name = "Binary Data"; sourceTree = ""; }; + DC7F5A47CBDE7E3A9AA86F85 = { isa = PBXGroup; children = ( + D4CA129DE8BC9F6EDC2BCAD2, + 2CE3420FBFD3136621EAFB1D, + C0E38F040D44C1474E42753A, + 4916E6E942FDEA8E55DEEF64, + D5607E34AA2399378CA6F72B, + C2E4D2C86DFBB8F14142D379 ); name = "Juce Demo"; sourceTree = ""; }; + AAB457A3E170486A669BF7EA = { isa = PBXGroup; children = ( + 13C15669B35168563D72F6F8, + 669FD4C70B8BF2B87DEAFB73, + BC3978DEBCC88DB02860E20C, + F250E301B85CB6140FC236A6 ); name = buffers; sourceTree = ""; }; + 826DCB7D5E55310994355B53 = { isa = PBXGroup; children = ( + 3EBBCD2A01201C7CC76389CC, + 6413A99AB17F3551937E397F, + 44616895C0F4219D47AC7FEB, + 21605BADE3692FBBAE44F961, + 3A3C8D765CD02651E2C39102, + 614AE257736D79B36015DBC4, + 66F2929C04B6E230FFA975C8, + 5031A666D462F64BF254F81C, + B3E75CAB88F9CBD5145C226C, + 1F7DFE97A858AACDAF9EBB7D ); name = midi; sourceTree = ""; }; + 24381AC39E3E1E43706536D6 = { isa = PBXGroup; children = ( + 97D6A96DEE15B1C9C270FAEB, + 2CD9DB6EFEAE8354A089CAC9, + ED9A2289AECFD9B928A9A08A, + 2DC1A9FFE2FADDF611409D6B ); name = effects; sourceTree = ""; }; + 50C8E80F5986688023F19CAF = { isa = PBXGroup; children = ( + 3FFA55DA900886D84F5A0A7A, + 7434F00C0F5768C4CFFC9C30, + A7BD5AB895B2531A75FE0268, + EEC74D7DAF96D7ADBC917976, + E94E773858B05D719E61DD6A, + A6C606F3BE6B630561EDE155, + 9E825AC2FBE27AC2BCAEA69F, + 67DA4E3A02A5697DE923E0C5, + 98C642B2E87A5D752E517A6D, + 9D09225ABCE19597A944DEEA, + BC966E4E8DE070E482B296C6, + 7E0006CE91286527B25433FF, + 7F65B8E1571AA346AA2F2FE8, + C355FD0ABB078A342BF6A6AA, + C526F791D3168AC0E87C2DD9, + 82DD6AB8F5279385455B0769 ); name = sources; sourceTree = ""; }; + 5140207688AFBD7CD5356327 = { isa = PBXGroup; children = ( + CB179EBD4C1AB9F3F59E9D4A, + 7C57A68F39036348C34D73EC ); name = synthesisers; sourceTree = ""; }; + 0596B4096DD627F972BB026F = { isa = PBXGroup; children = ( + AAB457A3E170486A669BF7EA, + 826DCB7D5E55310994355B53, + 24381AC39E3E1E43706536D6, + 50C8E80F5986688023F19CAF, + 5140207688AFBD7CD5356327, + F315F477DE84E05E9E440ADA, + 1A03C9B88919CA79D176E738 ); name = "juce_audio_basics"; sourceTree = ""; }; + CEDD0F91222D58B6765E12BC = { isa = PBXGroup; children = ( + 37E2F2B9AFE2B6C1AA51A11A, + A763E7AF50D548D8C4A4C3D1, + F9474BBBA977F050C5C66E61, + 785F32963F7F6458F3D4DC3D, + 94EB4630C360BA31195FA13D, + EA20E7FB414DD777C1618333 ); name = "audio_io"; sourceTree = ""; }; + 9BA0F84BBF38B6B5DC702BCA = { isa = PBXGroup; children = ( + 3817585001205632BF471A05, + 3D47500F131A273A8C29AAE2, + 3477734262959639DF347D4E, + B3FDF6B35E4E6ED6AAA8CDE4, + E0AE248F52C70AA1DEA1A5A1 ); name = "midi_io"; sourceTree = ""; }; + 901A0B1C81CB2E60827ADA89 = { isa = PBXGroup; children = ( + 9619FDAC2D7C1E273CFBD10C, + E249D6583995E0E6D0B3EADF, + F5B3E5C6F10A97AEA5786AC5, + 0074FA7EFC2898B71E22A945 ); name = sources; sourceTree = ""; }; + 5D1463D0CAF326A035EFF063 = { isa = PBXGroup; children = ( + D5DE603FFC184C590E2A6678, + EEA3A060739CA049C1339B9F, + 4A9E5DAE13069017FB5CAEB2 ); name = "audio_cd"; sourceTree = ""; }; + E05126DD45F861CA44DBDCF0 = { isa = PBXGroup; children = ( + F339FB092FFFBB9B95E7F732, + 570C04EF3724ADC8B2EF0563, + BECF3DC9A5405B9856DEF975, + 149369775B267A04F9B0ACAE, + 5741A7FD2C785C3F65377A45, + 2AE22D5AB8B2D3C381FBAC81, + A6FCBC9721E7FC9DE30B6DC4, + FFAD5C56A4E4038FB532565F, + F7BA444D0130F3613252D00D, + 9CF4E56974B8290F34032432, + C92A08C836B3326D6EDB14E6, + 447E2F5BA5478E8233CE1A1B, + 4DCA9EF26A5F2CCF0B74F8A1, + 9A1B5431CF0FFF248896A8F2, + 54B6F856BA80756C0C139326, + DDEC339D244553357E234C92, + E3D24CD61D75922457DB9642, + EDDA4ADA880E3B78143801D0 ); name = native; sourceTree = ""; }; + 21689DE0A3F6A8E3550F027F = { isa = PBXGroup; children = ( + CEDD0F91222D58B6765E12BC, + 9BA0F84BBF38B6B5DC702BCA, + 901A0B1C81CB2E60827ADA89, + 5D1463D0CAF326A035EFF063, + E05126DD45F861CA44DBDCF0, + 4CC2034DFB9E19F81E590E6E, + 95CA7C1593FFDE7AF8CDE98F ); name = "juce_audio_devices"; sourceTree = ""; }; + E10D88B71B2B0B8E403457CC = { isa = PBXGroup; children = ( + 9BA092AE037F13C968200B25, + 4B86077AAC3D6C026B3E31CE, + 1A5382EC797EF333806B5AFC, + F97E60F478662C7A4B413E5D, + 25FECE7ACACB29E1725A6A17, + 64485EF2AE378418411A8FCB, + 77CB4C3F4C72996179768CB0, + 12B9DB1413B7647920B53C07, + 38CDDFDC6697BF7BCFC8DAFC, + B9A07B3C2CC36D0830745F31, + 0D59D15FB8BC9FE203586FB3, + ACC522FB23E25ADDD38F8F98 ); name = format; sourceTree = ""; }; + A383EDCA7A04B91EAA0A044E = { isa = PBXGroup; children = ( + 1264CE16C2930583C8AB553D, + 2C712E1519F7D4410288D35D, + 11E6C0893A679EAD806DA5C2, + 0DFB01AAFD08E7BAD09DDAA2, + 359C09D53EFC4C1C557BC959, + 4306A3B2696CCE1D811D8C53, + 3DF6629A4DD77B71A5F855CC, + 7334C493C3EC57C4AA200F01, + ED467279290C0AA942FB2B27, + E274BFB25D87D93EDBC23114, + 7763574CC15B89B5BD8A4307, + 4275F414173638509F56E09A, + 9C785342B462AEB3D63418F6, + F49BD909BB1DD4BE7B669FA6, + 450F0C2A16431DBBAE50520E, + CE3DF5A017336CABFDD6926A ); name = codecs; sourceTree = ""; }; + 21F527AEF9C266046A0A196E = { isa = PBXGroup; children = ( + FC19E4B3335185A35678B597, + 327D715A8B4C164B34398221 ); name = sampler; sourceTree = ""; }; + E9E9D81EA027C542C95D6294 = { isa = PBXGroup; children = ( + E10D88B71B2B0B8E403457CC, + A383EDCA7A04B91EAA0A044E, + 21F527AEF9C266046A0A196E, + B3C3985129CB310EECCBDFF7, + 405F91E957609744EB0FC5C8 ); name = "juce_audio_formats"; sourceTree = ""; }; + 105805580BAF2CEBE4D0DA33 = { isa = PBXGroup; children = ( + BBA5037F5ABAFDAB54EB6903, + 67B45F46192481A24287B06C, + B792478999FB8A13DCE4FF99, + 3710B4143BD286E576B66C15, + C7DAB2D405C907CDA83C2924, + 7323A374566B649091DB8837, + FE89A070890FF722F9A128C0, + E34B2BCD14634ED3BC9F5431, + 5AE8CCF926E311A0A7088E5B, + B16E1644785E869DC000112C, + 86DDC7DDD8BFE56FCA73E397, + 5EFF3A95523D36B3F1A057C1, + 814313374CD209A40282985E ); name = processors; sourceTree = ""; }; + 10F28FF3263B59E64AF73921 = { isa = PBXGroup; children = ( + 1C36F82D875B81C26A5752AF, + 350624CF3CD7DCA1E0313D3E, + 0655D6F5C85104403FC367AC, + 235894AFDA79AF1644B3A217 ); name = format; sourceTree = ""; }; + FD4542E6C91E7212198A0887 = { isa = PBXGroup; children = ( + FB73EE6CD424A7543EE172D0, + 8E7F5F80EB6D99EED152A465, + 9398049BFCAC42B8FD1E16C5, + 3F4889BE2D946E79745601A6, + A1D2256DD1E864A4560459F3, + 5DBE1359F502F9C72E38800B, + 89006BBD5040A06E6C559F16 ); name = "format_types"; sourceTree = ""; }; + AC7EF7E94559BBC511E03002 = { isa = PBXGroup; children = ( + C427F2763EEE1F1C11E8EAF9, + 451D484BE77922E33CA60DFE, + 72C3E3A3E2760E1ECB6BD30A, + BADAE0896F7D4AEAA481B257, + 2C516889F34A72150CDB6ADF, + AE2C0F932F7E54799FA0897C ); name = scanning; sourceTree = ""; }; + E0455F5194FF065007BE4B0B = { isa = PBXGroup; children = ( + 105805580BAF2CEBE4D0DA33, + 10F28FF3263B59E64AF73921, + FD4542E6C91E7212198A0887, + AC7EF7E94559BBC511E03002, + 904B316152B6C23112E0A0B1, + 768D628853DDE9E4EF563DE4 ); name = "juce_audio_processors"; sourceTree = ""; }; + 6AA0D6DFB981C9ECDFED4C40 = { isa = PBXGroup; children = ( + 6D16F5C591F5558984437145, + 47F1E35082ED332567F9C727, + 0D244B27274E1E7AB434C32B, + 38022D22AE783472BA32DF82, + D2F7081BE9A6E24BA7CD1A46, + 86A52913E895EFD9C4D43D04, + 1D3DA514A7B46A2A32A32060, + 6E00A6B4B754E3008B969B8A ); name = gui; sourceTree = ""; }; + 41225457F81F375E3C7BE9DD = { isa = PBXGroup; children = ( + 33F9348D753D148E82519067, + CCE2933FEB395826A5710C6F ); name = players; sourceTree = ""; }; + 810A00D2DFF4E5F57301390C = { isa = PBXGroup; children = ( + 6AA0D6DFB981C9ECDFED4C40, + 41225457F81F375E3C7BE9DD, + FAD925A5A262E8ACF4F40354, + FC87932ECFE90EB63664B6BE ); name = "juce_audio_utils"; sourceTree = ""; }; + 2EA2DD5FD46F5D789223B408 = { isa = PBXGroup; children = ( + 834DCAD1857B654514D4A0BD, + B65938BA2A3EE3FEE9923E12, + 3AEC36869846977B0C09A881, + 0BA047892DDF9066220EEDD2, + 4AC80644D0D73A0FF8656CAB, + C2AFCF5805D239DF9F9DE2D3, + 8391251872CF6C7C11F11EEC, + CE28146B186C11F00BCBBBBD, + 1007D3CD4E3D162CCE176520, + 8CB23F01604E12FD33256AC5, + 49C7D1146BE928E7FEF48A72, + 4EB13D757A756408053DBB79, + 34ADBF046976CA8A3932B5EF, + 8A79588D3BEDD0DF69065099, + 85D1779E60213BC6670E2C75, + E6B13A51A01032961340735D, + 89ABB9AFCDB73A409754BE48, + CE882EE8C05AC3A809E41332, + B6ECBC8983C8C13575A3420E ); name = text; sourceTree = ""; }; + 9E385EE2C33A34870884808C = { isa = PBXGroup; children = ( + 7B53B778BF20B1BC43E2D562, + 20D1EA31FD53A558EBD278B5, + 2666A5013948E2EAD29458C1, + C7835B9A7DA88BE84F1366E6, + A86557C09D01406BB6964DB6, + BC4827D57EDF30E1886FCEF4, + B6F619428216E8DD021C6ECD, + DB507A1F7BB7489344FF90A9 ); name = maths; sourceTree = ""; }; + 8FF03782352807A3E6E6F611 = { isa = PBXGroup; children = ( + D8AFC87A918360FFC9D96BE5, + 16A6895439607DD8E651BA87, + C1A15473893B354642F7531A, + D57651845D6D9438DEA62F98, + 737F8D074841EE88B24DC761, + C9E621CAC46AE272EFB807E3, + B1EF98E196E432165CEA08F7, + 48DCD395FA50217F557ECC2A, + 77488721DFFE4D0C22E19299, + 129BC61A6A0478DC45B5F8E1, + 4AF29A63EBF9E0693BF999C4, + 988A5D1934361EB3009CD52C ); name = memory; sourceTree = ""; }; + 35B88D644BE4CDE6A3A396DE = { isa = PBXGroup; children = ( + F84F19D5BEF7E7AE00C8CDD7, + D27A3A58DCC37B5EFC3AD745, + 6D0757D493441CFB9C1B426A, + 8939B318C3AF6793C72D8A9E, + CF15EC19906A7A7C3D9E2407, + 2302DFDF103BE152232EA767, + 10C0D0A587B834EA781EF5D5, + 102DDBEEEAD7EE71450C1EB9, + 78AB95E1E7C39B3794F44E24, + 47B161CB864B6C499DE64416, + 1139AACAD8CE6CD6E9A770B6, + 2590DCE65DE2323D9EF77214, + D9282DF6556197822D2BD5D4, + 3CFE82D0B21D705C8C6DFCF9, + BAF897CBD4F6F7382D4DC72A, + 6C956B90C1BB1217BF02F0D0, + 0A049E4E98CA579D41D98432, + 5D312C2C94366F88C7A7A708, + 9B5833CD741A705B8AFAF9C0, + 013DEB204CA02DFE8B745893 ); name = containers; sourceTree = ""; }; + 97091DE509793B81A0622449 = { isa = PBXGroup; children = ( + C20DAAC0E23CCCB8FF64DFED, + 51A580427D01D51811D5F1D0, + EC97B274D075920B2490E0D8, + C26D5CE23205932DA1062C85, + C766591C3E8CB978D6026F56, + CA5844E270055529F3F3818F, + 12B4120D10259DF8461D689F, + B91F3E65CE47056DAF5C4DA2, + 99FE46FBB05F16AFF37AB6A1, + 9A947B1B4163730D13A4D24C, + 8D66115C77E904AB96FDF64E, + A6073115FE5E1E635C78DDFE, + 19789C9C8EDD3CC9F37592C3, + B6B93A495D82478E99956AD7, + 6BD99638187A39ABC44DCBA0, + 070230F8B36CFD14E7EEAD71, + E48615F1F7D8213F6DC24FC9, + C2D1EE14670950990F0769B7, + 79441FABE26CE4CF9BA128CC, + 077C8710E1F237529330ED3B ); name = threads; sourceTree = ""; }; + 00E1F623EAD83AC9671516F8 = { isa = PBXGroup; children = ( + F1EEED4DC97678861086B282, + 30F6134D7A127DFE9D1ADA20, + 554399057C06249E6FAB9E20, + A26D0251E9EF4FAB12D1737B, + 98C6708DE85079E157822A2A, + F76944FF282DB2FB4FB1B229 ); name = time; sourceTree = ""; }; + 211CD90AA77DBE161D9DAA02 = { isa = PBXGroup; children = ( + F53E1E312FBE025F836AA718, + EE2DACF73E083928ABDDA63B, + 59A4C185020F908DEB4A844C, + 18E9157D37A11EDBDA35131A, + 58061ADC1867C814A334D49D, + 2954678FE7AB78F318FBD4F7, + 823A2690E2229E32DE984AD2, + 8A15EDB6321B758A3EEF635B, + 6DD58CBABB8009DAA5104BBC, + A16EC49106F4E28AD49EECC0, + 7E6AEB024827FD9ACB353BB6, + 2D529158434D415C56A07479, + 4EC68506861032FFD4B848DB ); name = files; sourceTree = ""; }; + C60D4C4FC42A554A46D46B83 = { isa = PBXGroup; children = ( + E26E3AC933F70B56B7B83EFA, + 2D93002DFF33B8BC3AD37520, + 7985BF3EF947A7955C94364C, + AF9F8BD7FAA0567B70EA397C, + 6A4819E134CD45BD043C3219, + F9FE574AC4D30AE44C0DF98C, + 5BC78223CF42F85D660DA536, + 608BEDD96B33E0475FF1FD54 ); name = network; sourceTree = ""; }; + 825131C75D8295428718D9AF = { isa = PBXGroup; children = ( + 936C6419223D7B28CE16A72B, + 32FBF4064072FEB06C6677C2, + C583836F43E174944C6098FC, + A8B2537E3AEB0F0B791CF030, + 3C97F910F4E20FC15DB607F0, + 2173828BA5C245AE8C598C6F, + 2C610D8010FF4A396101E2DD, + 8603713AFBC316218045A963, + 1DFE892B4249D1DA3549F13E, + 956A7825F42E2D33FC97CF73, + BC6C5A22BC49D1F16B797A02, + EACB4129861122ABC1A2BB37, + 2C80ACF1A94F47BA05FA687C, + 3D9E23A71CF1E3FB6D532753, + DE80C724F35B1464853FDE9E ); name = streams; sourceTree = ""; }; + 3F6A1A4FE9CE09F865C2F9EB = { isa = PBXGroup; children = ( + D25A334218A3D87F4D0BBD15, + 0574EFED0877A72D12A472E5, + C94D5056497677CC3FCB5AAD, + 393CDFCFA0358C689E5A3691 ); name = logging; sourceTree = ""; }; + E11D230996C7EA5090C8CF3B = { isa = PBXGroup; children = ( + 20C67AA68186D267436E7F39, + 6EF8660ACF82A6472884ABB6, + 1798F0BC1F2B2DF2F13193AB, + 8D3F5C48CD1B104A105845E9, + 62AAFFC7E5754AA715DCB1E5 ); name = system; sourceTree = ""; }; + 7950FD188ACB69BCCE4E592E = { isa = PBXGroup; children = ( + 72FF1B91B6590B036636E20B, + 39ED2CD3C8A17DF313A0838B, + 2D5379BEA988458161F6694A, + 20149C04068D071819A7BAFD ); name = xml; sourceTree = ""; }; + 356902978BF9F2910199BA96 = { isa = PBXGroup; children = ( + 30B5F2ABF28FD59FA7DA26E2, + A7F413D4C880363878469E5A ); name = json; sourceTree = ""; }; + 31679EC1083B0E93BD133F6D = { isa = PBXGroup; children = ( + 3786A46162305EA0B75F35E8, + C5CF3A35D0896F95596FAC4C, + 830186B50B369AD64C539EE1, + 47DAE660790C8E8CE96A63FB, + 419A5345B4F9B977B7C1FD2E, + AE860FA70A2F37F4A889A9EF ); name = zip; sourceTree = ""; }; + 29D30EC0005E4EA41AB30573 = { isa = PBXGroup; children = ( + 15B78E8E81D489F2711FDFBE, + 3E49B797A7DF7B2F596F330B ); name = "unit_tests"; sourceTree = ""; }; + FD57658D3C4937B68FC377C4 = { isa = PBXGroup; children = ( + 06D8EAABB6D94D55189361D0, + AB4A28A3667EA4C8393470A7, + 2820D74789660269902DB93A, + 549BE844954C5CD52D46FBD1, + 77845C048A123FF3D2619158 ); name = misc; sourceTree = ""; }; + DC206734AA07236B6CF2C486 = { isa = PBXGroup; children = ( + CFF27E108381EC6BA758EE7E, + AAABC8FBF364D9A596F4AA4E, + 0D2F4EE7A540CC2AAFD301E4, + A5A6819C57A0399C81E03301, + CEF96D559AAB6D61FB8A0288, + 82474A9673BE92E34D03FE39, + E48E2824CED9933934127522, + 7F580113B80A85759A406E81, + 353DB618823D6BC97E0986C1, + CA799D1FF79E811275318304, + B657CFA035D5285F14DE6AD3, + 9C0DB4F281D10303224E41A1, + 247646A6A435A3BDDEA602EE, + 641BCC559554D3C4B51A5B92, + B0461717A1A4204943AB55C3, + 9CD9B6E7197079625A165653, + 8B7490B27707118E03A50933, + 2597ED98D3C16A7EEF1FBFFD, + 4E6F438BDC119B89C9518531, + D8081154AA3072D2F2C4B625, + 1FD483D22D49AB7C716008DC, + DA2FCB30EE2A41085FF93B9B, + 03DA010C988E825AF3EFAE7A, + CEAE0C8168A4E71C6D607659, + 106B20CB3C94A1E72B19A7F7, + 8F1D89D1349B0DCC115B5D47 ); name = native; sourceTree = ""; }; + 4DC690DD63DDBC55E62125D7 = { isa = PBXGroup; children = ( + 2EA2DD5FD46F5D789223B408, + 9E385EE2C33A34870884808C, + 8FF03782352807A3E6E6F611, + 35B88D644BE4CDE6A3A396DE, + 97091DE509793B81A0622449, + 00E1F623EAD83AC9671516F8, + 211CD90AA77DBE161D9DAA02, + C60D4C4FC42A554A46D46B83, + 825131C75D8295428718D9AF, + 3F6A1A4FE9CE09F865C2F9EB, + E11D230996C7EA5090C8CF3B, + 7950FD188ACB69BCCE4E592E, + 356902978BF9F2910199BA96, + 31679EC1083B0E93BD133F6D, + 29D30EC0005E4EA41AB30573, + FD57658D3C4937B68FC377C4, + DC206734AA07236B6CF2C486, + A3346F6C215C2CEB5F9416FC, + 278FB432DCB9A4F9DBEB64DD ); name = "juce_core"; sourceTree = ""; }; + F70B6E2FF584AF141CA17BBE = { isa = PBXGroup; children = ( + 6181080398CF1388C5C15051, + 30B7393EE0006E9958AD82C3, + 2D9920BFC36E621CBDCE2381, + A93A4042E1214A65BD70DAEB, + FE87322C0C3E84720083F1C5, + DFF6BF0BB64714A494A25E93 ); name = encryption; sourceTree = ""; }; + D12B1750F63F258FD4B5CC6E = { isa = PBXGroup; children = ( + C07BEF22C24DD225C5D0940E, + DED6D04CFED991C5924B78F0, + C5FF20572B734C4EE8F204B6, + 840EF2C371FCC5690DA216F6 ); name = hashing; sourceTree = ""; }; + 22237417DF1FEB16A5FDCC96 = { isa = PBXGroup; children = ( + F70B6E2FF584AF141CA17BBE, + D12B1750F63F258FD4B5CC6E, + CCD6FA03199F37A9CCA6340D, + A974197873E277C3BA5DF666 ); name = "juce_cryptography"; sourceTree = ""; }; + A65902CD81957B294C593017 = { isa = PBXGroup; children = ( + 32B277F17C4052C6E4C70859, + 258AC1AA4F4459F9CF99944D, + 678034FB9D177C3D08044AB9, + C2E3B2EC0F1EB46349FBAF63 ); name = values; sourceTree = ""; }; + CE753C6AB61CCE0A7E574245 = { isa = PBXGroup; children = ( + 4D2697EB7DF6121A0037A399, + 137FD6DAC3FF840EBABD78E1, + C3F7B701463826A93DFE5587 ); name = undomanager; sourceTree = ""; }; + 172F56777A03BBB0ED14EAB3 = { isa = PBXGroup; children = ( + F123556B79ADA02F5E549727, + 1EA77055DF14613DD32065F3, + 24F057BF79A4723C521BBEE4, + 2E3C193C1C7AF236B10F01A6 ); name = "app_properties"; sourceTree = ""; }; + 43B31F713FF681531675E618 = { isa = PBXGroup; children = ( + A65902CD81957B294C593017, + CE753C6AB61CCE0A7E574245, + 172F56777A03BBB0ED14EAB3, + 51AFA9AA1B3094239580A0B6, + 0F77650615781AFD4374443B ); name = "juce_data_structures"; sourceTree = ""; }; + C12CEDFCB9C90CD0F767D7D0 = { isa = PBXGroup; children = ( + 22132E527A92309318A2D572, + E15F577E82B2E12597447472, + C66E08F5118F529FC623733E, + B6D34ED1DE5CC8010A1BE232, + 96C8D0EE75ABEB02422AA41F, + C4A730DEDDA33FA9A06CDA82, + 52CAE85DCE0FA2692B8A85C7, + 56CA808B4610A5C34730B4D2, + 55DDAA81843B00449145EA5A, + 6627248BD1D82CBA820F1FCF ); name = messages; sourceTree = ""; }; + EED6FE335B473510B17D26CE = { isa = PBXGroup; children = ( + ABDBA289C591093A65BD526B, + 973F391C41F2774E0CB8D54A, + AF26F1B432EF78EB76107FDA, + B59728841A18523C5950A51B ); name = timers; sourceTree = ""; }; + DA337AFA3100AEEA04703024 = { isa = PBXGroup; children = ( + F242ACDC3C1ED82039C45915, + 80E7D8D4E601BCC20054475E, + 0C4CA33345C6952BC8409D71, + AEA287A89324FB9D48370C33, + 59F616BB319A05A8E93B89FD, + A72FB74D13AA5C6A472E9E82, + ACB502AF25A235733295406E, + 6E365FC14CFBA3BD28196D3A, + 9D70FB5DE184C636EC01EC67 ); name = broadcasters; sourceTree = ""; }; + 106C22CF2DD971FCC2C2B45A = { isa = PBXGroup; children = ( + 79E54897373142A27EC0FC40, + 1BDF3CAE40B1FDD559BC3DD3, + 114E68D51824D42B0FFE9651, + 9AFD4A062067D5F709FA793C ); name = interprocess; sourceTree = ""; }; + 99E45617DBB30CEAE6F71DA5 = { isa = PBXGroup; children = ( + 98028D7823ADA4594A8A2A22, + B22D28FB41374E7092AEE96C, + 4604F166A3FC6187967E2053, + 22DA9E57AAA25391C7D1FBC6, + FFF09A9DCDFECD32F25F0CDF, + B62A2E9AE08575992BAE53C5, + A4BF6FE6902ACF80D2E3DB60, + ECEFF5A78873B5B388046E7A ); name = native; sourceTree = ""; }; + 069A030A72EF1BAF3C469E6C = { isa = PBXGroup; children = ( + C12CEDFCB9C90CD0F767D7D0, + EED6FE335B473510B17D26CE, + DA337AFA3100AEEA04703024, + 106C22CF2DD971FCC2C2B45A, + 99E45617DBB30CEAE6F71DA5, + 35FF3215D779C44F5B715702, + 3F273BE94572DB6E747B0793 ); name = "juce_events"; sourceTree = ""; }; + 6B073962B4485C2D4419DB53 = { isa = PBXGroup; children = ( + FE75937BEEFDA021D7767B59, + 08DC64993F213D275B988996, + 04184D8A7003E2E77ED66CFA, + 7D12F1C172F94A735E17ADD4, + 7415D37F43E9CA0C5D924D17, + CC0BC6AC42809A4F4FA21452, + 11B4C67851A83C42B8AC00C0, + E86CBC37B034041BFF5A10DB, + D0B9859FCC534C510C7F37A7 ); name = colour; sourceTree = ""; }; + A86D046BBA3A3F7575A24A75 = { isa = PBXGroup; children = ( + 3706A97B56FC6BFF72B700DF, + 508E1F2760E66BD1A73C235E, + 98D731CDF5B6F60ED9198CC7, + A6C2A4889A4E70DE735EBA4B, + 87EDA764A802069F89CEC355, + FABF3148A2F5D3ACD48E8838, + 385368D4C7693E8903E0C345 ); name = contexts; sourceTree = ""; }; + 24D8A81F218FDA69056FE3D2 = { isa = PBXGroup; children = ( + 07492D83B5CEED0F975EEF77, + 2D585CE2B407C9072D9A22C7, + 6BBE4F2809E2AE0FE445302C, + 24EF2357DEC8017E6EEC7F93, + BD84136646D8700D41BE7EA2, + B53B1A87D9A58B3E056B4D8E, + 664211B1C9D22E34B60EF5E6, + CF6533A53CCA75A2FAFACAB8 ); name = images; sourceTree = ""; }; + 08C024383E9C0EBA20B9B7FB = { isa = PBXGroup; children = ( + 6B03CB11D5DEABAEE7F9E0F1, + 2C2B87B06DED242E1C4FE878, + BE95C8978503BFA15B38D3C4 ); name = "image_formats"; sourceTree = ""; }; + A106FCB178451935674C6F15 = { isa = PBXGroup; children = ( + 27C340103177AB0848BCCC66, + E71C493A0E10D1AE4A3DB2AB, + 12EE1FB670B7894E873E9A57, + 21F1833EDC766935B1CBD2D5, + BA710A8F1D5B056162B7CB3E, + 73AC2ABA9094C062E8DA773E, + 105A6621F66CC8034DC59C9A, + 32F08660DB00B6BD5C905FE3, + 80EEC26431102B212C9F873B, + 3D01072645251F386FCE636B, + B6F0FA98AD1AA6A3552A59FE, + D4DC657E222FE2BDE92EC58E, + 33A84E7FDD64568649CC89BF, + 1089C7A1FF43033FDA63F711, + BF76B8C5007732311AF50543, + 38E0255E6BB9600DEECD39F8 ); name = geometry; sourceTree = ""; }; + BB4F117CD3A2EA9CE8390AD0 = { isa = PBXGroup; children = ( + DF47E8197FF5A9309C062C61, + 1375CAA34ECE0B3B292EEF0E, + C30EE4EFDB359E2A9D58F677, + 989587AD131FF27180BEB3D1 ); name = placement; sourceTree = ""; }; + 0FC4D9918A17F33EEF6831F1 = { isa = PBXGroup; children = ( + 39DADA0AAD7468C535ECD5A2, + 3A7C2EA6B6C8E00BBE6A29B1, + 36DD59799C3C4279B18DEAD3, + 1118BAEA98C38755FEB9E274, + DEE1FC30E2FBB97921616CA9, + 9C5F40CA5A70DD8207F53047, + D1CADE1C7E74F37D0D57575B, + C3E0EB7CDA04886FA8323C17, + FEA724E71E582903094A455F, + E9C3901F0B4AC410025D2086, + 2C3298EC4F4D0DA7A6C4291F, + 90F9E3FB8FF07BA924E42DC0 ); name = fonts; sourceTree = ""; }; + 401A2016A5C336D8F8813895 = { isa = PBXGroup; children = ( + 0B8D7873618440F42487EB7B, + 3EE0B72A06759B14B7FC6836, + 720BE81011A4F54822E7F498, + 12C5FC07F64317F5CF1063A3, + 9B07C7F9F91CDF9465EE2AEE ); name = effects; sourceTree = ""; }; + AE4D88D94AF6F0F06DE97BB6 = { isa = PBXGroup; children = ( + 4F2F636FB9416BFBB1FF2473, + 373EBC4E488B3EF8A0A72CAF, + 6C608B44E265F761D09C91CB, + 61D55BA26F1410A26A007514, + 8EB9B4853F225BDB97D6626E, + 8154D2D681E028B8783E5331, + 0BBEDD3E8C0C2B7C4B52016A, + 2649F70294DB168919CBCAD3, + 5712EB90A8B51DBBC4E19A39, + 6704DC3810D991DADFF947AC, + DFEAB699C98B89FF0B85F557, + 5CABE190EBD0F4EEB763114A ); name = native; sourceTree = ""; }; + 980520A52BB3BF76E45AECA8 = { isa = PBXGroup; children = ( + 6B073962B4485C2D4419DB53, + A86D046BBA3A3F7575A24A75, + 24D8A81F218FDA69056FE3D2, + 08C024383E9C0EBA20B9B7FB, + A106FCB178451935674C6F15, + BB4F117CD3A2EA9CE8390AD0, + 0FC4D9918A17F33EEF6831F1, + 401A2016A5C336D8F8813895, + AE4D88D94AF6F0F06DE97BB6, + B523ED8502475B9BB3F392C7, + BF59C96BC3BCB29CCB421861 ); name = "juce_graphics"; sourceTree = ""; }; + 754D5C51D503AEDC94BCDDFC = { isa = PBXGroup; children = ( + A9B72D6049A3539B63AE79D5, + 79078F37EB6919AA440017FC, + C9AEAD8B2366F9508E63A178, + BF6F272194D16055D6A90D94, + 7C1A682DC90937487D6A4B0A, + 6314AFE1A17F085C028B4C82, + BAEAC53813F354CE5E045E9F, + 7BB9913643FCE12B216AD8C8, + BE4673AB9542C19D1C1C3A63 ); name = components; sourceTree = ""; }; + 75FA4FA813EAB3BA61D0FC37 = { isa = PBXGroup; children = ( + 30416A5D76A365DDC434987E, + A57A09A4137135A0AF6A0800, + 3090FB05992F02292F415E33, + 467EAE3A087BEF2C56EE3FF7, + 4242718AFF89762AA5CEC247, + 78C4635C8F91A9A513C6B9DA, + EA1313A79BF10BE60238F3D5, + CCFBB22AC379DC3B3A839CA1, + D27D41D4A06E286FDBDF7549, + 61B4084F81D01C8730F5952F, + 74C5EA2191F9A05902D76BB3, + A9958339328213FF76D8A79C, + BA8CA56A4E1F30984B8E4208, + EDDDD60231231B8221711145, + 6E0DA76710F31FA13F5168B3, + A18C61D2206141C03B24BF9B, + E963816786695359C91EF35D ); name = mouse; sourceTree = ""; }; + FDFB0903CA0E73107353483F = { isa = PBXGroup; children = ( + 1FC2BD9784C0FCB1D259C006, + 11545F94DD1628DE57CB7768, + 03E820FAB7405937F26D6EF2, + 8B0B9E8A37911F76577E3AA8, + 18666AEC1FCCE5D1514EB1FD, + 7FC1A0B1663AC9262104D715, + CD2AEFC254C92A49F2D5DA64, + 05F2CE704CA3BC807CC5E19A, + 08B1356929EB57FE6FCE238F, + E8FE41E21AD1029DD709FD7C, + 726A4629ED6E091D24471CA8, + 95305C4003CD4784CA20D1D1, + FC1201FBE79AED3FC831ABAF ); name = keyboard; sourceTree = ""; }; + 14C6A919ACDD67A04594931C = { isa = PBXGroup; children = ( + 3A9AB41831037CF68FF5719F, + CCB4250C97008BF3E5F12D0B, + 60704E9013507A9F9729017D, + B5B987C3029862AC58363F1A, + 897420C9C4D80F1AE5F80637, + 7BB52DAA6A783F0194EEF869, + B418FE6F1E2F268880AE00A8, + 4F854124B48F6358A992D164, + 3FA49B24986D1DA7CFA612ED, + 893D867B3AB93E4D96AF060E, + 5CE14F63495533AEDBD1688B, + E5DC4602843749A071B17576, + CB68DC2B2EA837D6869AAACD, + 171777847EB6194910E9CFEC, + 34E9DFB552CA9B8FEF8DEF1D, + 98EB4070281520EADE02212C, + A34C1EFF7C51BEB33C22FAFA, + 3543594CCB08E22D1EA8D2C7, + F534B4A3A4E46A8311A44649, + CFB2E2DFBCBAA9BF91E7CB35, + 10152F168CB3E2039DF18EA8, + 0EA9280C282850BAB49C1696, + A80CC48B8215D447643CA411, + 3839556028D5A749F48340FE, + 5CE4B86B0FCE258A8A12AB09, + 4E8A36ACA8A867C7511B280A, + DEA38275A65473112CD34252 ); name = widgets; sourceTree = ""; }; + F6D3F46A7453FE306581C066 = { isa = PBXGroup; children = ( + 014740E7C97145AFAD9BD60C, + 0388C01D765585853A700C6A, + 96DDB84D9722732A64DA57A2, + B428CC689CD359B29C67272B, + 5435804E495A87442FD7A6F0, + 3421ADCAF375264A71E5AF07, + 22A86C5C4967A5844323F7BA, + D33142A214D7AC7A8ED27E4A, + A2BBD7D58010E488BE904CCC, + B59DA3ED4F12C1FFEE433EE3, + 63DD8F6DD0DDC9A6F45E0C90, + 119712DC26D0E95E209E85BB, + DF3B7E1BC0AF0C826C47745B, + 35F42453CF2745BD254BC71E, + FAC8B4FB05C57F3461E3FE30, + EC93857F367028441A067F45, + 9AB36BCC26D5CC2CCC71E5E4, + 4DE313B7586BAFF5E9BB0506, + 924667AB0E27AC2CE1EB7828 ); name = windows; sourceTree = ""; }; + 9AE0D12907BC79E230FC6920 = { isa = PBXGroup; children = ( + 56D3242C281C2F19A2A6E81B, + 66425E2428080B75F0FFB2C4, + 52FD39B0A762C353D2FB09BC, + CE66BAB575B13375E1EE937C, + 3CF7FB16E7DFE7EC2636A45D, + 3507A95E429F11E5549286CB ); name = menus; sourceTree = ""; }; + 63EF7163E3CE53A8167FD628 = { isa = PBXGroup; children = ( + F664E58A0B3899FB98CF8E1C, + 4EC77B02BE7457DE877E332B, + 23189A59169BC89E95A4A496, + D7E6E92AA32B7D51489FD256, + 61C6FB83D4582BF2F84EB464, + 825BDA58C2694CE7F3FC2494, + 422D4D8EE3470F57D56064AA, + CF2A1897A3C5610A282A2713, + 108D97ACAEDE5A8DF0A483B7, + 3B32FA1EF99322D3DED5F162, + E453E312D607E60FAA6D1BF0, + 6B0F3AF3FE7B113C33112897, + 7F2A4EF4DE29CE775FF0F5E5, + D602AE751C3C12A6458FCCD5, + 052964DDB569D0D8C38B89FA, + 9C7B5E573807ED59065B54DA, + AC2D4E1081F69B20AAB47E2F, + BCEAC6346AB15421E3A5AB70, + F48AE8E1A9A1608BEB4C16A9, + 9B572F52342BE9169D435F1C, + 2B3A770317B04AAF24C28EF5, + CD9EDF2EE190AFB02CCC3F49, + DD40A3E06CA320D95F3924BA, + FD36FD1612A96DDE000211E0, + 65A50CC38E2A045D320D4224, + 32FF688C9F64E07EA3917682, + 74D36012BEBC6FDD72B0572F, + AF5FD9E66E46B600914FFE53, + C4C6D6B8731B400B29A3A4E7, + 0EC1E7F1AE41C81E1EA23B2E, + 1A9EC07147DD48C0D68BF304, + 7EF1F0BC4F4DE2986856DE41 ); name = layout; sourceTree = ""; }; + D5D3EABCD52C4657BAA44568 = { isa = PBXGroup; children = ( + 43D8FB16F1DE9F159C7A2F71, + B1C64086587109AA429DE418, + 4D050E552CC0A82297D0AC86, + 7DA4BF4F615254D8AFD37BEE, + 9E80EC17EE6322C452E9A774, + E38DE271B32DCC95E52C72DA, + BDC0E815578ED04901FB9251, + DE7617FB215CD22983E7D736, + C7EBDC32959BE4405ECE2148, + 195326647ACE1A61018358BC, + 927B5B18A655057D57C37D35, + E6C582E67DC0C4D0CCA18166, + E3FC888CC9FAD650C469ACC5, + 2ACD67859FBC33EB743708CB, + 1A642D2FFD6CB47C8634337B, + 0E0F146C817BAD44A024ECC7, + 99B22FB30FB36F358A932F6A, + 67F14D1D1869540E4B9540B5 ); name = buttons; sourceTree = ""; }; + F9F59A6E27133C09D32DD9A2 = { isa = PBXGroup; children = ( + A588C458AC395D8AC09A433D, + 50A201CF006DD19F648C429D, + 99971599D48BFF60437E0F44, + 731FFEA1471A03D05AED1B77, + FF93CCEC386B165840328831, + 12DD0DF90EEEBCE88873C8B1, + D33EBA9793C56D73135BD1F0, + BB94B67B5B0EC06015621F59, + 09768BD4CFA73C85F8353F3A, + 63CF475000C8419AE8D25BD2, + 53A5227FBB8C0DD8F4442599, + 2A835EF38887CAB750B49AC6, + 06574539E17A8703E442F691, + 725D10330456FC57C9FEA75D ); name = positioning; sourceTree = ""; }; + B59BB676733E03D09CEEC9A7 = { isa = PBXGroup; children = ( + C50F17EA37434C3C7B52C3BD, + 503F07193B665711417DF1FC, + BD1E818B710742D5EC07BAE8, + 47BD3D6D5AC81F74179942FA, + CC1307C0AEE134EEA46F68EA, + 122C499E8D63BC4F91ACC7B6, + 2708E4F2F73D88F73D8E54D0, + 35089DB1D126566F2B5DD724, + 12B479E0CD2AAE105820B20D, + 156E421F5B0D6CAD8D415F53, + 5996F037CD5993251871573E, + AA0DE5CA2B089393B110FD25, + 687E1D120E47EEFEEB73A4BF, + 26B73C77D47B146F92BEA265, + 431B8B4CCA364880B507DD4E ); name = drawables; sourceTree = ""; }; + 50A2C093F5AE2410908018DA = { isa = PBXGroup; children = ( + 4CE8628F7CAB483AFAFA01FD, + E2732267CD7C0C3BDB17456A, + F796E49F8209912C1E8E0ADC, + 49FED6A86A4F78CDB60CBC99, + 709D153E2940C162215E31F7, + 462F0D225347C4FDB943324C, + 591E3F5832C08B0841971B01, + 31C1E172911A4C726A85EA02, + 2D6DAE85F0A729F1FF761DC7, + 34BEABBC39678C06EA3BB307, + 63A3A467F124B67D19587D4F, + 36EFC492079F0B7F4A1CB099, + F6AE140F7CE1B08B52A8C8AF, + 03AB3157D77979CDD2601A86 ); name = properties; sourceTree = ""; }; + E4A2262D5F17C9E13403F764 = { isa = PBXGroup; children = ( + 2F7FE4AA919A66D5EFF65A86, + 329BD0A0243005D36A444135 ); name = lookandfeel; sourceTree = ""; }; + D529A26C2B113F5DC6DD3571 = { isa = PBXGroup; children = ( + 5725CB557A7D55CA59E18324, + EC180AD91D1B068D7A8F33BB, + 348002712045A8515DB393E4, + FBDA70B8FF6C6D669F9CF540, + 66E3497A9DCF883BCE6A27A8, + C8E9F901721D86767BD458B3, + 89F519023C03C9908F761BAE, + F6D1D5FD437BF40AC208AA2E, + ECCEB7E5D6B18F1376E34EDC, + 574BCE46C31D810F694B0651, + BD7E3C305F0976D5C5395090, + 1A9B80E0518B9AA9C34D5804, + EB9E8921A8D36EDD7FF3245B, + 1D0DD674EEEF98B1E1B8D8D8, + 0C7631EB40FF52D74D3D0A8D, + 86DF811859C602F24589AC3D, + C069C5FCE1539E9F85C7F29E, + 59591325C73706DB6BD2C887, + 98DD360F5D3D60539185DE90, + CAF961A7AFDB2830B419214C, + DF2D86EEA8031481C1FD08B2, + 5010D82E6ED57F014D8E88E3, + F26F7C7D6D9EBA2693914AA1, + C03AF9257B94504D7270416A, + 6CC2241F234EDD873FD5BDC7, + F4C50E1A3DC066396613C401 ); name = filebrowser; sourceTree = ""; }; + 7BF561FBBF76BCAD37304ED8 = { isa = PBXGroup; children = ( + 3FCF8E2901F23E806122E4AA, + 747D307A1A0D468103D4B20E, + 5D7DE60BB4DF4CE300B4F343, + 43A4661DD876DBD6A6E1F5C7, + C0608375ACE89B422431E9A9, + 0782BB99E1CCE0474B695C7D, + EB902A37F3AA5BC62D523F5B, + 20E63E36AE128883F4144BC3, + 3121916B396AFD0027FF1926 ); name = commands; sourceTree = ""; }; + 78AB3C7F8B92CBD9F21EDD39 = { isa = PBXGroup; children = ( + 9D18794763C086784ECE98D6, + AAC98CB517D934F42A25416E, + A1A96650D3211A87738A9B75, + 3ADBF520293DBBCE5A605902 ); name = misc; sourceTree = ""; }; + 44C5E35F6404D0D81E2F93BF = { isa = PBXGroup; children = ( + A58203002289D424A2CDF5DD, + 3B583D35FAD0DE89F00F17C0, + 18D1181C39F5A59423AC7A3E ); name = application; sourceTree = ""; }; + 0741D0D65503C2C4BB227EC8 = { isa = PBXGroup; children = ( + A9566A42230AACC1AFDC6C5F, + 1B3C2797B04E0FC6699DFDF0, + 6BBB8746C2C1BB5F3C3F1FC2, + 9F35ACC90F2A1C2E565148C8, + 7667028F4EC27060934DCF30, + FEB2CCC12BBABEEC23384FDD, + 3D8ED4E2F2DFEBA891A4BD7B, + DA0D464BE6E90C3668AD7C73, + 4871179A9D7239EDE34B33BE, + F8FB27C3434BB255CED42861, + D3AD73A360B24493ECC4E092, + 5ACCDDBA02C73CE15D6532E9, + 22CD1BF5E83A216A0D18260D, + 62AFEF7525003814092C79FA, + 3E11497CB4E6589C8A10E740, + 52D9F5FD82C858FE4F134773 ); name = native; sourceTree = ""; }; + ADFD648375272A1E67B3CB5B = { isa = PBXGroup; children = ( + 754D5C51D503AEDC94BCDDFC, + 75FA4FA813EAB3BA61D0FC37, + FDFB0903CA0E73107353483F, + 14C6A919ACDD67A04594931C, + F6D3F46A7453FE306581C066, + 9AE0D12907BC79E230FC6920, + 63EF7163E3CE53A8167FD628, + D5D3EABCD52C4657BAA44568, + F9F59A6E27133C09D32DD9A2, + B59BB676733E03D09CEEC9A7, + 50A2C093F5AE2410908018DA, + E4A2262D5F17C9E13403F764, + D529A26C2B113F5DC6DD3571, + 7BF561FBBF76BCAD37304ED8, + 78AB3C7F8B92CBD9F21EDD39, + 44C5E35F6404D0D81E2F93BF, + 0741D0D65503C2C4BB227EC8, + 760B6B73C7C332980801C0C7, + B875CBC2CBA6D01EE0AAB25C ); name = "juce_gui_basics"; sourceTree = ""; }; + 0738039F7E5D430630032154 = { isa = PBXGroup; children = ( + 5092F31788400A172E319CCB, + 15DD1FC7780F48C6DFF56321, + C3A77F115D67C0E24C65FC45, + 441F40BFFD11D433F2FED531, + 282C1DA3A161FEF2AD6F94A6, + F84DBFF75F5334EA86AB2E37, + 618F07B344089C7B13EED411 ); name = "code_editor"; sourceTree = ""; }; + 640482925394FB311FDAB984 = { isa = PBXGroup; children = ( + D6C9614D1C6493DBEE370646, + 82AD87FA68D9DDD78F9A4674 ); name = documents; sourceTree = ""; }; + 1E1530112868032A2C02F4A4 = { isa = PBXGroup; children = ( + 2E7A4C5E41B3BEBC444B5935, + 1E868017015269856168EBA1, + D226630AEE6B273B6B1ED622 ); name = embedding; sourceTree = ""; }; + AD533544879D32FDC9647970 = { isa = PBXGroup; children = ( + 8042D0D2B38EBD19652CBA55, + 896140063D12A19D1DCBF3DF ); name = lookandfeel; sourceTree = ""; }; + E2081DA359B95C05D825E9DB = { isa = PBXGroup; children = ( + 1CCB7B18759F7CEBB065C31E, + 0E74D38CAF5F8C914132F4D5, + 61941C6E24D2D04F51F59134, + 2CED94801F5481AE15648BF9, + BF2093D486040BEC64210EBB, + 9AB8510F26D6035159042BC2, + 74390F0BB6A54198B7EE12CE, + 8E6E18125D1046B97EF7AEE2, + B2F5CA0FBCECC10EEEAD11E9, + 2FD23F0C1CE490858228180E, + 33E3113EE5BF74F269FAD5EB, + 14105A8032081F6FC44F7F0B, + C2692BB8791ADE59158D9F21, + 61E83A490FBB38A8D7613146, + 476F1E00A832948D22B468C1, + 9D042E1CAB03CFCD4B937951 ); name = misc; sourceTree = ""; }; + 6478E04ACFBEA2CBBBE97006 = { isa = PBXGroup; children = ( + 3D5DB29BE2D59A93B5516273, + 2E02355C7790F4B6EA0CC56E, + DF590CD70352A30FA3BD9835, + 3CFD018C7CC9E7B8E1E6232D, + 99AAA16209763F3DA2113D1B, + CF0DB23C5950CB619CF8D812, + ABBA4018C1596481E7CD51CD, + 147A045E381AE58EC0C54984, + 8CA151FDAFC858B6535BF6A3, + 3342B88619BAEFF4C41078FD, + 93C594ECD5CEA7878114149A ); name = native; sourceTree = ""; }; + FC8FF0152858F140DEB1622C = { isa = PBXGroup; children = ( + 0738039F7E5D430630032154, + 640482925394FB311FDAB984, + 1E1530112868032A2C02F4A4, + AD533544879D32FDC9647970, + E2081DA359B95C05D825E9DB, + 6478E04ACFBEA2CBBBE97006, + 5E12C726C5DBB9C81963FAB5, + A97EC32975392744C62684F9 ); name = "juce_gui_extra"; sourceTree = ""; }; + EB8917291F41B7345B13B53E = { isa = PBXGroup; children = ( + D866C4735BF1EF0CA24FC1FB, + 87FB016388B49E97FCCBE69B, + 4F802BD98072EA49F7F4FE4A, + D6D0F076F54C7D669A9717C9, + 5786364EC4C531CDE41BDCEA, + 8878426C7F58CB22969E7133, + AC3EFDDC80761A45E8BE0624, + 43E4604C39E9A992216F6B98, + 295A470694011EBCA802822B, + A7B3B265DACC82D9E9CFB3DA, + D7239D5B984E07808E2DB28C, + D2C40CDF46D894BFC72BDC56, + E46977801F19277F4D3B324B, + 17422D876DAAF091ED089B8D, + B81FA2ED22BCC03D124031ED, + 58864C3D7F369EBE01E42C5C, + 8EEB4DEB11F3DF01BA6F7528, + FE9A5898294228EB7F439951, + 4CFB262AA9778621B8B33A7D, + EC89003BF30329181BB3EA4B, + D2F161366612A4CDA6372113 ); name = opengl; sourceTree = ""; }; + C92FEA88254DAAE793DB3CF7 = { isa = PBXGroup; children = ( + 22C2C932398DC1EFE0880A9A, + ED9FAEA9116C568942BAD000, + 6E1CFF5227B2F2E200DD9EC7, + AE394742FA0F2C6AA39906DD, + 7E6041874E267458572B93A1, + 8565630D87FEE505D50CE2EF, + D66048AF1E05FF836B2A813A ); name = native; sourceTree = ""; }; + 7CFCB9A92FB574419734C1F5 = { isa = PBXGroup; children = ( + EB8917291F41B7345B13B53E, + C92FEA88254DAAE793DB3CF7, + 53B187F6CFBDE72F4CEFE845, + 2184D5F7212394F4BC1C3B45 ); name = "juce_opengl"; sourceTree = ""; }; + 269792C267D2F1CB065C91CF = { isa = PBXGroup; children = ( + 2968B26144E09D6A6659E739, + 607083E28D3CAAC3C69D3010 ); name = playback; sourceTree = ""; }; + A76B071B010FC4CF03DFE5C0 = { isa = PBXGroup; children = ( + F93E02181A90B71B0C16629F ); name = capture; sourceTree = ""; }; + 0F1BFB71EE708138D6BAE774 = { isa = PBXGroup; children = ( + 49AD4268C6B2CF4E12806E56, + F28314027C0D8E36A9FE43E3, + 1580FF065A04106DBBA8F475, + 6DF10AFB26794D47F3AC783B, + 4ADF2B4274758FA3F435D6DB, + 7D01B73D4ECD4899173EE882 ); name = native; sourceTree = ""; }; + A23C0116EA7422F7F759BFEF = { isa = PBXGroup; children = ( + 269792C267D2F1CB065C91CF, + A76B071B010FC4CF03DFE5C0, + 0F1BFB71EE708138D6BAE774, + 47C2B600A45FAC095669304F, + 7B0C40F57724D3021F83F423 ); name = "juce_video"; sourceTree = ""; }; + E9CE0CCE2CE829712D4E41BD = { isa = PBXGroup; children = ( + 0596B4096DD627F972BB026F, + 21689DE0A3F6A8E3550F027F, + E9E9D81EA027C542C95D6294, + E0455F5194FF065007BE4B0B, + 810A00D2DFF4E5F57301390C, + 4DC690DD63DDBC55E62125D7, + 22237417DF1FEB16A5FDCC96, + 43B31F713FF681531675E618, + 069A030A72EF1BAF3C469E6C, + 980520A52BB3BF76E45AECA8, + ADFD648375272A1E67B3CB5B, + FC8FF0152858F140DEB1622C, + 7CFCB9A92FB574419734C1F5, + A23C0116EA7422F7F759BFEF ); name = "Juce Modules"; sourceTree = ""; }; + 267F5230CADEEAB9CA475C2F = { isa = PBXGroup; children = ( + 4EB06BB3A534C3865CD7A8B8, + 579D22DA6ECC930E19B7104A, + 4E0A38A8008E55C09BFBA199, + 33DAC2BB94AFCF8EB33A1417, + 7C7834D5AB7E6656A4CECF2F, + EADE149294A3A3509EC61E6B, + 0FCE8CD83D0FA98563EE2920, + 278099898E32942D72AB635A, + 868D4BEF6B94EB7BF659CF01, + 4FC0DDA3086EE26242655E66, + 766F3BD777CA786CD6BE023E, + 890F3D7DA5BC01DACF8E5431, + 575587359A2F65312CE97AC4, + 4CE1249813E63913B15BB51E, + C2072DE0D1FF6AA90A700D25, + 9AE7533B1AD68245E130B3AC, + 49DA3670A8CF79F133914D18, + 42B89D48E9FB252F1BC3796A ); name = "Juce Library Code"; sourceTree = ""; }; + 539DF80B9269EFCA8BF42818 = { isa = PBXGroup; children = ( + 148C8FE6639F6CDF0E92235D, + 16793951B75EADE5C08FD129 ); name = Resources; sourceTree = ""; }; + 0AE68D12A51E59B084E046C1 = { isa = PBXGroup; children = ( + DEB23C98FEC261260F63B6A4, + 4E1E8D79739D5A1771F1CE96, + 07FECAD8E43331B1058FABD0, + C4169C8CB5406154E9BCE2B2, + D45EF873A4BD7D0E56274D79, + E6448B3F03DD2B41519DF93D, + 683535B25CE57F64EC61EFD1, + 1220770583209247B4A994BC, + 10C5331E1325E856FFD8733B, + 70350B2642B3D062D0A8D239, + 6289926B08B7CD4A990134F5, + 8A6EC99172989940C08E809D ); name = Frameworks; sourceTree = ""; }; + 913372FE9DAAA74F5520A786 = { isa = PBXGroup; children = ( + D119A3871626EC2B8EFCB0D4 ); name = Products; sourceTree = ""; }; + 197E966E1B8F9DE1A6F9F0D4 = { isa = PBXGroup; children = ( + DC7F5A47CBDE7E3A9AA86F85, + E9CE0CCE2CE829712D4E41BD, + 267F5230CADEEAB9CA475C2F, + 539DF80B9269EFCA8BF42818, + 0AE68D12A51E59B084E046C1, + 913372FE9DAAA74F5520A786 ); name = Source; sourceTree = ""; }; + 2FE1E46B92ED7BD427F01D8C = { isa = XCBuildConfiguration; buildSettings = { + HEADER_SEARCH_PATHS = "../../JuceLibraryCode $(inherited)"; GCC_OPTIMIZATION_LEVEL = 0; INFOPLIST_FILE = Info.plist; INSTALL_PATH = "$(HOME)/Applications"; MACOSX_DEPLOYMENT_TARGET_ppc = 10.4; + GCC_VERSION = com.apple.compilers.llvm.clang.1_0; + CLANG_CXX_LANGUAGE_STANDARD = "c++0x"; ONLY_ACTIVE_ARCH = YES; COPY_PHASE_STRIP = NO; GCC_DYNAMIC_NO_PIC = NO; - GCC_ENABLE_FIX_AND_CONTINUE = NO; GCC_PREPROCESSOR_DEFINITIONS = ( "_DEBUG=1", "DEBUG=1", "JUCE_ObjCExtraSuffix=JSLvvV6j", "JUCE_UNIT_TESTS=1", "JUCER_XCODE_MAC_F6D2F4CF=1"); }; name = Debug; }; - 8EF7C7FFD55219581A5075F3 = { isa = XCBuildConfiguration; buildSettings = { + 9E3B64077ABD2AA72A51EE7C = { isa = XCBuildConfiguration; buildSettings = { ARCHS = "$(ARCHS_STANDARD_32_BIT)"; - PREBINDING = NO; - HEADER_SEARCH_PATHS = " $(inherited)"; + HEADER_SEARCH_PATHS = "../../JuceLibraryCode $(inherited)"; GCC_OPTIMIZATION_LEVEL = s; INFOPLIST_FILE = Info.plist; INSTALL_PATH = "$(HOME)/Applications"; MACOSX_DEPLOYMENT_TARGET = 10.4; MACOSX_DEPLOYMENT_TARGET_ppc = 10.4; + GCC_VERSION = com.apple.compilers.llvm.clang.1_0; + CLANG_CXX_LANGUAGE_STANDARD = "c++0x"; GCC_GENERATE_DEBUGGING_SYMBOLS = NO; GCC_SYMBOLS_PRIVATE_EXTERN = YES; GCC_PREPROCESSOR_DEFINITIONS = ( @@ -215,7 +2040,7 @@ "JUCE_ObjCExtraSuffix=JSLvvV6j", "JUCE_UNIT_TESTS=1", "JUCER_XCODE_MAC_F6D2F4CF=1"); }; name = Release; }; - 7FA986B99AFC795723E00AB0 = { isa = XCBuildConfiguration; buildSettings = { + 7F619F19FB1204B9E5AA1421 = { isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; GCC_C_LANGUAGE_STANDARD = c99; GCC_WARN_ABOUT_RETURN_TYPE = YES; @@ -230,7 +2055,7 @@ ZERO_LINK = NO; DEBUG_INFORMATION_FORMAT = "dwarf"; PRODUCT_NAME = "JuceDemo"; }; name = Debug; }; - 623F392572A48BDD48CE1CC4 = { isa = XCBuildConfiguration; buildSettings = { + E713D5D6C98E4FFEF301FC0C = { isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; GCC_C_LANGUAGE_STANDARD = c99; GCC_WARN_ABOUT_RETURN_TYPE = YES; @@ -245,60 +2070,70 @@ ZERO_LINK = NO; DEBUG_INFORMATION_FORMAT = "dwarf"; PRODUCT_NAME = "JuceDemo"; }; name = Release; }; - 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 = ( - C0A3C433D146C7E1FFCADFB2 ); runOnlyForDeploymentPostprocessing = 0; }; - 7A3A0C722E5F96990CA1B5F2 = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 78A66C2F9A9E2E6D011D8E5E, - CE5C46E66485B7D77B5ADB4E, - 2E2DB52D03DD6A56FAC937A4, - 8E0E3B718F35E9E1DC3D89C5, - C4C49D2D5D27730E55B27BCB, - 2CD67851BCF3F24E0B5F82CF, - 29C9F0E2824F63B105234C0A, - 7EFB4E7D738BFFF90F49E0C0, - B69F5957B1729915BFB18735, - F920A5AB6D0FF01022575079, - 940BE0338CC1FEB65B4B82E2, - A3AF0F559DD97F1B908AC1CA, - 2C0AB902CB01E38D87A2A6A5, - ACD2210FDE1137548F995F85, - 2F6BFF7DD839160223057CF7, - 1552CF5A0A932C5EB88EC56C, - 969C49FA8B55C700ED848494, - AE1CB65D73BFB3FA707B59FF, - 99D9F5D6FC8A015C603B32C3, - 563DEC7941B88163A50E0945, - F5691895ACDC7B12DE88EFF4, - 4D5C0ED42C87FBE02A9C7BE6, - 80926D2B83ACF680958111EC, - 2201A04DDCFC361882F8EA62, - 2E98B1DEA8B7FC20ACCD2E6D, - 3A2EC17F8472C338D6A26278, - 36B5D100604D9A300187B773 ); runOnlyForDeploymentPostprocessing = 0; }; - 2E5F3CCB074AC0B18683A4F3 = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 36AEC0EAE7AB9D061AD9EFEF, - DEDBEF9AC48F8AD1502B6DC2, - 92A7143821252FB13891CC53, - 687BFA1946EAD55C5C39907C, - ED283D0ABEC2EC312E40C6B4, - 420A9C88B711F5E4997FAAD0, - 29F75103FFB220F2E10CF9A9, - C1437C4A64EB72D2A86729D3, - B9911F3AC6CADFB47D1EA8D7, - F1BAE9DCD179C8784FF28F8D, - 452052BBDBAF17DCC06EF521, - 0CFE603DE523940AF3352227 ); 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.1"; hasScannedForEncodings = 0; mainGroup = 1609BCDD8EC2BA2A162B68F3; projectDirPath = ""; projectRoot = ""; targets = ( F26B86DEACDEE5DFB60E10B1 ); }; + C01737B8733CB01B27C1DF59 = { isa = XCConfigurationList; buildConfigurations = ( + 7F619F19FB1204B9E5AA1421, + E713D5D6C98E4FFEF301FC0C ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Debug; }; + 4EBA6A51E838E294DDFC57F8 = { isa = XCConfigurationList; buildConfigurations = ( + 2FE1E46B92ED7BD427F01D8C, + 9E3B64077ABD2AA72A51EE7C ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Debug; }; + 2E115993E9743E9E60D96434 = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( + 933C39A0A20A89B767742D07 ); runOnlyForDeploymentPostprocessing = 0; }; + 8478974C956501F4EA996448 = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( + F7DF6AC4276AD42F4F360E37, + B99620051F4C5A2FAB1DE49C, + 49FBA0236A1917CEF50FC456, + F5B4E1CC211F5215D6E05B44, + 6D221136E94E784E793B9CD5, + B43C4A8F569137053CCEAD76, + 127ED5764EA5A3BF3CEA5BBD, + C4FCFE5612A1ED999FB9D51D, + B2A1C85517169CCEBB79CB9F, + 196F67D37488DD92EF434694, + BF03F7C64A1FA6A2E15A9780, + 4CA7D59ACB03776D785FEB12, + 7DFFCAD7929BE7BA645C65ED, + BCFD0CA15F13967BF82B26A4, + C33DAAC97DACAEE978D635F0, + 4FEDD45FE6A26543E055F259, + F600FD434B52D887C1FB973D, + 0C993072AF2728D62BF28094, + 1D0E1EAD88C7EF8CBB16E841, + 85EB509411E79E3F970C9653, + C24BF8E3142DBFD0139EFEE9, + BEBB1C4BA92F6D4CDE224A15, + 662202A6B86B11E3DBD96D58, + B00C72D607AF2A98366B40DE, + 8938D948E7A216EE7264F500, + BA3DAB221F557B4C346EAFCF, + 26973D9739CE05EF7F41C687, + 020A3C34BE41F0B9B4AC7A64, + 845872D67C4313E91DCD3A8E, + 6488F374D2A9B9FEDAC40859, + F72A0043671FED94178413A1, + B639B9459CB9EBE2A00A37F3, + A9BC6DEA9311B5C74977A95E, + 3FCA7FE72D0EF062CB350F88, + 574104B02E5C0BFCCDA099B1, + BF1DE7C7A64706C9FBD7284E, + 4A61E54E2ADD5FBBB1486257 ); runOnlyForDeploymentPostprocessing = 0; }; + 8C6D93B7CB9CCF8025AA68EB = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + 0BCC52797AD97E09EA6DF0E4, + 7C26A95A4D47D3456AFF77ED, + 7717E0EB94DE6020C99D29DD, + 4163960D3A804CB466831F16, + F544EDBF5507628552174493, + 05E4BF5B924C8055524AE9C8, + A6BA1ABCFD4082DE39CA569C, + 70E15D9B766035A214A5EBF2, + B290DD7AE127F3B205E64287, + 87EDE18A8381271AE00E982D, + BC729FCFEF515CAE82E43DF6, + FA833091C017889D43AEB5CE ); runOnlyForDeploymentPostprocessing = 0; }; + 9A1F85020B3ADFBFE3D383F2 = { isa = PBXNativeTarget; buildConfigurationList = 4EBA6A51E838E294DDFC57F8; buildPhases = ( + 2E115993E9743E9E60D96434, + 8478974C956501F4EA996448, + 8C6D93B7CB9CCF8025AA68EB ); buildRules = ( ); dependencies = ( ); name = "Juce Demo"; productName = "Juce Demo"; productReference = D119A3871626EC2B8EFCB0D4; productInstallPath = "$(HOME)/Applications"; productType = "com.apple.product-type.application"; }; + C1B2C620111BD898B338CCA1 = { isa = PBXProject; buildConfigurationList = C01737B8733CB01B27C1DF59; compatibilityVersion = "Xcode 3.2"; hasScannedForEncodings = 0; mainGroup = 197E966E1B8F9DE1A6F9F0D4; projectDirPath = ""; projectRoot = ""; targets = ( 9A1F85020B3ADFBFE3D383F2 ); }; }; - rootObject = FD051827ADE403C022034508; + rootObject = C1B2C620111BD898B338CCA1; } diff --git a/extras/JuceDemo/Builds/VisualStudio2005/Juce Demo.sln b/extras/JuceDemo/Builds/VisualStudio2005/Juce Demo.sln index 20a7a7bdce..082b75a5bc 100644 --- a/extras/JuceDemo/Builds/VisualStudio2005/Juce Demo.sln +++ b/extras/JuceDemo/Builds/VisualStudio2005/Juce Demo.sln @@ -1,6 +1,6 @@ -Microsoft Visual Studio Solution File, Format Version 8.00 +Microsoft Visual Studio Solution File, Format Version 9.00 # Visual C++ Express 2005 -Project("{7A947A64-CDD8-D41D-F886-5E65A8ABDF81}") = "Juce Demo", "Juce Demo.vcproj", "{36211E76-A802-50EE-3B95-0202F4EB67ED}" +Project("{B49533A3-E69B-E288-783B-47C939C7FB33}") = "Juce Demo", "Juce Demo.vcproj", "{E9F746BA-9271-B101-E5E2-1615849AF13D}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution @@ -8,10 +8,10 @@ Global Release|Win32 = Release|Win32 EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution - {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 + {E9F746BA-9271-B101-E5E2-1615849AF13D}.Debug|Win32.ActiveCfg = Debug|Win32 + {E9F746BA-9271-B101-E5E2-1615849AF13D}.Debug|Win32.Build.0 = Debug|Win32 + {E9F746BA-9271-B101-E5E2-1615849AF13D}.Release|Win32.ActiveCfg = Release|Win32 + {E9F746BA-9271-B101-E5E2-1615849AF13D}.Release|Win32.Build.0 = Release|Win32 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/extras/JuceDemo/Builds/VisualStudio2005/Juce Demo.vcproj b/extras/JuceDemo/Builds/VisualStudio2005/Juce Demo.vcproj index dce0f77a99..79f8a61125 100644 --- a/extras/JuceDemo/Builds/VisualStudio2005/Juce Demo.vcproj +++ b/extras/JuceDemo/Builds/VisualStudio2005/Juce Demo.vcproj @@ -3,7 +3,7 @@ @@ -32,7 +32,7 @@ Optimization="0" BufferSecurityCheck="" DebugInformationFormat="4" - AdditionalIncludeDirectories="" + AdditionalIncludeDirectories="..\..\JuceLibraryCode" PreprocessorDefinitions="WIN32;_WINDOWS;DEBUG;_DEBUG;JUCE_UNIT_TESTS=1;JUCER_VS2005_78A5003=1" RuntimeLibrary="1" RuntimeTypeInfo="true" @@ -54,6 +54,7 @@ GenerateDebugInformation="true" ProgramDatabaseFile=".\Debug\JuceDemo.pdb" SubSystem="2" + GenerateManifest="true" TargetMachine="1"/> @@ -85,10 +86,10 @@ TypeLibraryName=".\Release\JuceDemo.tlb" HeaderFileName=""/> @@ -215,15 +216,4269 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - diff --git a/extras/JuceDemo/Builds/VisualStudio2005/icon.ico b/extras/JuceDemo/Builds/VisualStudio2005/icon.ico index b5dbab53ed..8a216cd7f4 100644 Binary files a/extras/JuceDemo/Builds/VisualStudio2005/icon.ico and b/extras/JuceDemo/Builds/VisualStudio2005/icon.ico differ diff --git a/extras/JuceDemo/Builds/VisualStudio2008/Juce Demo.sln b/extras/JuceDemo/Builds/VisualStudio2008/Juce Demo.sln index f83ac8aa65..f318ea42e4 100644 --- a/extras/JuceDemo/Builds/VisualStudio2008/Juce Demo.sln +++ b/extras/JuceDemo/Builds/VisualStudio2008/Juce Demo.sln @@ -1,6 +1,6 @@ Microsoft Visual Studio Solution File, Format Version 10.00 # Visual C++ Express 2008 -Project("{7A947A64-CDD8-D41D-F886-5E65A8ABDF81}") = "Juce Demo", "Juce Demo.vcproj", "{36211E76-A802-50EE-3B95-0202F4EB67ED}" +Project("{B49533A3-E69B-E288-783B-47C939C7FB33}") = "Juce Demo", "Juce Demo.vcproj", "{E9F746BA-9271-B101-E5E2-1615849AF13D}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution @@ -8,10 +8,10 @@ Global Release|Win32 = Release|Win32 EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution - {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 + {E9F746BA-9271-B101-E5E2-1615849AF13D}.Debug|Win32.ActiveCfg = Debug|Win32 + {E9F746BA-9271-B101-E5E2-1615849AF13D}.Debug|Win32.Build.0 = Debug|Win32 + {E9F746BA-9271-B101-E5E2-1615849AF13D}.Release|Win32.ActiveCfg = Release|Win32 + {E9F746BA-9271-B101-E5E2-1615849AF13D}.Release|Win32.Build.0 = Release|Win32 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/extras/JuceDemo/Builds/VisualStudio2008/Juce Demo.vcproj b/extras/JuceDemo/Builds/VisualStudio2008/Juce Demo.vcproj index 3838035562..0cb3b801f2 100644 --- a/extras/JuceDemo/Builds/VisualStudio2008/Juce Demo.vcproj +++ b/extras/JuceDemo/Builds/VisualStudio2008/Juce Demo.vcproj @@ -3,7 +3,7 @@ @@ -32,7 +32,7 @@ Optimization="0" BufferSecurityCheck="" DebugInformationFormat="4" - AdditionalIncludeDirectories="" + AdditionalIncludeDirectories="..\..\JuceLibraryCode" PreprocessorDefinitions="WIN32;_WINDOWS;DEBUG;_DEBUG;JUCE_UNIT_TESTS=1;JUCER_VS2008_78A5006=1" RuntimeLibrary="1" RuntimeTypeInfo="true" @@ -54,6 +54,7 @@ GenerateDebugInformation="true" ProgramDatabaseFile=".\Debug\JuceDemo.pdb" SubSystem="2" + GenerateManifest="true" TargetMachine="1"/> @@ -85,10 +86,10 @@ TypeLibraryName=".\Release\JuceDemo.tlb" HeaderFileName=""/> @@ -215,15 +216,4269 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - diff --git a/extras/JuceDemo/Builds/VisualStudio2008/icon.ico b/extras/JuceDemo/Builds/VisualStudio2008/icon.ico index b5dbab53ed..8a216cd7f4 100644 Binary files a/extras/JuceDemo/Builds/VisualStudio2008/icon.ico and b/extras/JuceDemo/Builds/VisualStudio2008/icon.ico differ diff --git a/extras/JuceDemo/Builds/VisualStudio2010/Juce Demo.sln b/extras/JuceDemo/Builds/VisualStudio2010/Juce Demo.sln index b43badbc4b..ed5bc76051 100644 --- a/extras/JuceDemo/Builds/VisualStudio2010/Juce Demo.sln +++ b/extras/JuceDemo/Builds/VisualStudio2010/Juce Demo.sln @@ -1,5 +1,6 @@ Microsoft Visual Studio Solution File, Format Version 11.00 -Project("{7A947A64-CDD8-D41D-F886-5E65A8ABDF81}") = "Juce Demo", "Juce Demo.vcxproj", "{36211E76-A802-50EE-3B95-0202F4EB67ED}" +# Visual Studio 2010 +Project("{B49533A3-E69B-E288-783B-47C939C7FB33}") = "Juce Demo", "Juce Demo.vcxproj", "{E9F746BA-9271-B101-E5E2-1615849AF13D}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution @@ -7,10 +8,10 @@ Global Release|Win32 = Release|Win32 EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution - {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 + {E9F746BA-9271-B101-E5E2-1615849AF13D}.Debug|Win32.ActiveCfg = Debug|Win32 + {E9F746BA-9271-B101-E5E2-1615849AF13D}.Debug|Win32.Build.0 = Debug|Win32 + {E9F746BA-9271-B101-E5E2-1615849AF13D}.Release|Win32.ActiveCfg = Release|Win32 + {E9F746BA-9271-B101-E5E2-1615849AF13D}.Release|Win32.Build.0 = Release|Win32 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/extras/JuceDemo/Builds/VisualStudio2010/Juce Demo.vcxproj b/extras/JuceDemo/Builds/VisualStudio2010/Juce Demo.vcxproj index bf4ac85c0b..c70bbf7f71 100644 --- a/extras/JuceDemo/Builds/VisualStudio2010/Juce Demo.vcxproj +++ b/extras/JuceDemo/Builds/VisualStudio2010/Juce Demo.vcxproj @@ -12,7 +12,7 @@ - {36211E76-A802-50EE-3B95-0202F4EB67ED} + {E9F746BA-9271-B101-E5E2-1615849AF13D} @@ -38,9 +38,11 @@ .\Debug\ .\Debug\ JuceDemo + true .\Release\ .\Release\ JuceDemo + true @@ -53,7 +55,7 @@ Disabled EditAndContinue - %(AdditionalIncludeDirectories) + ..\..\JuceLibraryCode;%(AdditionalIncludeDirectories) WIN32;_WINDOWS;DEBUG;_DEBUG;JUCE_UNIT_TESTS=1;JUCER_VS2010_78A501D=1;%(PreprocessorDefinitions) MultiThreadedDebug true @@ -63,6 +65,7 @@ .\Debug\ Level4 true + true _DEBUG;%(PreprocessorDefinitions) @@ -91,7 +94,7 @@ MaxSpeed - %(AdditionalIncludeDirectories) + ..\..\JuceLibraryCode;%(AdditionalIncludeDirectories) WIN32;_WINDOWS;NDEBUG;JUCE_UNIT_TESTS=1;JUCER_VS2010_78A501D=1;%(PreprocessorDefinitions) MultiThreaded true @@ -101,6 +104,7 @@ .\Release\ Level4 true + true NDEBUG;%(PreprocessorDefinitions) @@ -144,11 +148,1062 @@ + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + + + true + - - - - + + + + + + + + + + + + + + @@ -160,6 +1215,417 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/extras/JuceDemo/Builds/VisualStudio2010/Juce Demo.vcxproj.filters b/extras/JuceDemo/Builds/VisualStudio2010/Juce Demo.vcxproj.filters index 27e96ed573..87d777de08 100644 --- a/extras/JuceDemo/Builds/VisualStudio2010/Juce Demo.vcxproj.filters +++ b/extras/JuceDemo/Builds/VisualStudio2010/Juce Demo.vcxproj.filters @@ -3,16 +3,310 @@ - {D3C1BE7C-161D-78D2-AA4A-AE5B28A49DC5} + {FFB45265-A014-1875-5188-CD02DF0DAA70} - {0F706C6E-4C56-28CC-6E17-621CE5C94904} + {CEE291D2-B794-F8AD-E5CB-C6464CCC6C25} - {2AA5AF01-B73D-17DA-570C-25BCC6A2DE34} + {E8DF8151-62C1-E4A8-7266-43ADD4C9728E} + + + {422C46B7-0467-2DB0-BF3C-16DFCAFD69AC} + + + {3247ED97-A75A-F50B-8CCC-46155E895806} + + + {A33A1E1D-AC2C-6382-8681-48B0FC374C60} + + + {3FD908F5-98C8-9A61-FC03-0BAF8913CBB0} + + + {11A75801-B027-40BD-4993-023023ACCBF7} + + + {EF2CAB40-0432-429B-C517-86ADF136BB8A} + + + {8F7EC212-3168-AD81-5064-C45BA838C408} + + + {CACD7B50-4DB3-76AF-A6E8-90DF94F8F594} + + + {9D270B31-2425-8FDB-84A4-6A2288FF5B2F} + + + {0F766DD4-A277-CB86-5647-42498C8B41E1} + + + {D64942B4-6984-3623-3347-45D472AE1C61} + + + {45C2CE26-EC4B-BA52-58F3-297C408E1483} + + + {01603E05-423B-5FC3-1BEE-E15ED33B5688} + + + {65CB28F8-0422-A8F3-9A17-959E12A1F8E2} + + + {2FE25F4C-E9DF-04A5-CAED-6E4B7CF28C59} + + + {0CD9E281-DDD0-91EC-6F77-EA9D9D5E0E1A} + + + {40C5CA7C-AEBB-05B1-11CE-AE41D87B5CCB} + + + {0B0E7392-324B-088C-FBEB-5FE999D61782} + + + {77E2C34E-A4D6-EDB5-A107-7CB3CEF0E8EF} + + + {20254EFE-6CBD-31A7-2119-92B1E0E0E311} + + + {70796D73-6D30-8A1B-4732-7C021E47C05A} + + + {EB8DD942-E2CB-869F-D381-E02A65BA790B} + + + {B63F69FD-8A40-8E1E-E7ED-419B8DC1C12B} + + + {8167E753-09C7-5D1C-EF2B-32D297557443} + + + {AEDCB7F7-7A36-5392-8E9A-715F5BDE35CB} + + + {95CA1506-2B94-0DEE-0C8D-85EDEBBC4E88} + + + {244D11B0-2D68-3C08-A0B7-0D12469BC3AA} + + + {476C69CE-0B67-6B85-E888-45D91E37A29E} + + + {7C5AD030-F8CC-6E85-0AF6-196B3ED40AC6} + + + {0608ADE9-66EF-1A19-6D57-12D07F76EB53} + + + {05F3DB8A-499C-6ACA-282F-5BF8455A0DE1} + + + {C9F6D785-BF78-5AA1-B479-111C65397864} + + + {C8F726FC-26BF-2E6B-4ED5-55A7FE316D7D} + + + {DA0DC4AC-B511-A2D4-199A-C93454D6F114} + + + {91929C6F-7902-B87D-5260-2F6CBF8ACD93} + + + {C294408A-2005-2E9E-7AC0-8D3ABE8AC175} + + + {4634FFAE-9586-A970-364C-4FDDA635F99F} + + + {F2B2F310-F30F-7166-42A9-9BF9C230DA78} + + + {5B662103-FB59-7229-1076-6A6665724ED0} + + + {F03654BC-34D8-F975-BEA3-750CC2783D23} + + + {4927C7A1-9235-4AA1-93CD-B4E67E6F1E5F} + + + {FA891A58-9FDA-9651-43C4-714A19B5D08D} + + + {C79A4D23-7866-8F3E-AC39-BD68C52A9259} + + + {3C7C8F35-6C08-9866-6663-6FEFE2EFC9FC} + + + {7703D2CE-C32A-936A-0EEF-949FE6E52EB5} + + + {8D283B6C-13BA-9EF6-1B18-B1C393786943} + + + {928D8FCC-5E00-174B-6538-93E8D75AB396} + + + {1988E68A-A964-64CA-0E0C-26FF9BC5176C} + + + {3DF036EA-3B80-553B-2494-3AAC835CAE75} + + + {358AEA11-3F96-36AE-7B32-71373B5C5396} + + + {F2A38F45-6E55-E147-2E52-64A89FDD9D59} + + + {6172822C-01A5-E824-12DA-FA43FA934D35} + + + {41DC3BE3-D629-8A17-C32B-F5B4008B5FAD} + + + {B098BC87-3298-7E6B-12DC-D26C09CDCAED} + + + {6322B88F-984A-C3CD-6263-38D7AA49B6EC} + + + {73C1E759-AD90-59A3-942E-2D10FAA29107} + + + {EE1AE8C3-0908-8F53-A4E5-D930C7C97C26} + + + {4926B3FF-E797-F586-857A-69D9703FA2D1} + + + {EBC65085-3AD5-280C-1A29-2B1683643AA1} + + + {413F481F-075C-2958-115C-D8268682FCB7} + + + {69E1179D-76EC-26DC-C3E6-6602ED26D783} + + + {C1A1A236-AB01-173E-96C3-0706BFF93B1E} + + + {1182303F-ECA3-166D-AC0C-92C5E762CB93} + + + {26ECA2AF-7368-C6CC-58EF-017ECD1862D0} + + + {E37D25CD-4350-4614-055B-7ABC55E67895} + + + {FFC6E1CC-C772-75E6-5087-FB5D4E016799} + + + {8E43579F-C185-266D-DD67-F8B95BD80F2F} + + + {2CB59E7C-D0E4-7D27-2ACF-C7ABADEE936D} + + + {796B7886-44A7-34CC-9B95-BF4FB2C7B6F4} + + + {A92719C7-70BE-57C4-CE9E-A9BC9DFEB757} + + + {75F1F352-251A-75E0-D941-8431588F5C1E} + + + {DB6E3D09-66DA-12DA-BAE8-A5BFFA7A14AC} + + + {7BCEAB87-62FD-0327-EB5D-679E54EDB9B1} + + + {E980FADB-6E3F-B93C-DE02-CE4271C9BA93} + + + {C3B2EB8A-1A2F-306F-AA78-3E9D1593788B} + + + {7A53E6F1-1343-33B8-4CA8-1D7B714A0E76} + + + {5A0AA36E-3957-E413-14C6-31CBE15271DF} + + + {D7E3D10F-3ED8-DFC5-6DB3-E4ACBF8678FB} + + + {F408DCA2-D5E2-0A3A-A064-A1D045889BC1} + + + {5FDBD6B1-9BBD-392F-4DA5-FEA40A9370C4} + + + {46535B56-3737-2BE8-E3A0-571BCBEB2DA4} + + + {C2B9505B-27B4-F650-12BD-F477D4BBCBAA} + + + {61712B09-5783-ADFA-2001-5A0C3D7764EB} + + + {8A80BA78-D3A8-C0F8-7FFD-61AA028CE852} + + + {8EC9572F-3CCA-E930-74B6-CB6139DE0E17} + + + {C60A6FCA-9462-922E-AD8D-69F10C9049AF} + + + {D56498EE-E354-1F00-5EEE-8CF7944BEAFB} + + + {61B2920C-494D-D8CB-C0C7-5DBF3D76D164} + + + {4980B18D-FEDE-B773-F254-E3B5207D81F0} + + + {66C9B809-8739-A217-C78D-A15D6089B8E3} + + + {C413328B-5D81-89EE-F4F3-75752E700DE4} + + + {639E16C5-DA8B-ADBA-6E24-7B596378EAB2} + + + {2D8D0E19-E676-83EB-38D9-F73500DD6B79} + + + {151B49D8-6102-F802-1C07-D59931BC0574} + + + {72A923E2-C729-DB92-D7BF-A9D4AFAE5896} + + + {0E43EA8A-95EE-4253-E1B7-160F38ACBB00} + + + {7F11E7D2-54C0-2A36-5F15-BEC0A5374A08} + + + {EE985DEA-CD83-8132-7219-542BB1DAD560} - {F7048EA6-F4B2-F31B-E402-E05D678A1111} + {8B4D1BAA-6DB4-CAEC-A0FA-271F354D5C61} @@ -100,19 +394,1213 @@ Juce Demo\Binary Data + + Juce Modules\juce_audio_basics\buffers + + + Juce Modules\juce_audio_basics\buffers + + + Juce Modules\juce_audio_basics\midi + + + Juce Modules\juce_audio_basics\midi + + + Juce Modules\juce_audio_basics\midi + + + Juce Modules\juce_audio_basics\midi + + + Juce Modules\juce_audio_basics\midi + + + Juce Modules\juce_audio_basics\effects + + + Juce Modules\juce_audio_basics\sources + + + Juce Modules\juce_audio_basics\sources + + + Juce Modules\juce_audio_basics\sources + + + Juce Modules\juce_audio_basics\sources + + + Juce Modules\juce_audio_basics\sources + + + Juce Modules\juce_audio_basics\sources + + + Juce Modules\juce_audio_basics\sources + + + Juce Modules\juce_audio_basics\synthesisers + + + Juce Modules\juce_audio_basics + + + Juce Modules\juce_audio_devices\audio_io + + + Juce Modules\juce_audio_devices\audio_io + + + Juce Modules\juce_audio_devices\audio_io + + + Juce Modules\juce_audio_devices\midi_io + + + Juce Modules\juce_audio_devices\midi_io + + + Juce Modules\juce_audio_devices\sources + + + Juce Modules\juce_audio_devices\sources + + + Juce Modules\juce_audio_devices\audio_cd + + + Juce Modules\juce_audio_devices\native + + + Juce Modules\juce_audio_devices\native + + + Juce Modules\juce_audio_devices\native + + + Juce Modules\juce_audio_devices\native + + + Juce Modules\juce_audio_devices\native + + + Juce Modules\juce_audio_devices\native + + + Juce Modules\juce_audio_devices\native + + + Juce Modules\juce_audio_devices\native + + + Juce Modules\juce_audio_devices\native + + + Juce Modules\juce_audio_devices\native + + + Juce Modules\juce_audio_devices\native + + + Juce Modules\juce_audio_devices\native + + + Juce Modules\juce_audio_devices\native + + + Juce Modules\juce_audio_devices\native + + + Juce Modules\juce_audio_devices\native + + + Juce Modules\juce_audio_devices\native + + + Juce Modules\juce_audio_devices\native + + + Juce Modules\juce_audio_devices + + + Juce Modules\juce_audio_formats\format + + + Juce Modules\juce_audio_formats\format + + + Juce Modules\juce_audio_formats\format + + + Juce Modules\juce_audio_formats\format + + + Juce Modules\juce_audio_formats\format + + + Juce Modules\juce_audio_formats\format + + + Juce Modules\juce_audio_formats\codecs + + + Juce Modules\juce_audio_formats\codecs + + + Juce Modules\juce_audio_formats\codecs + + + Juce Modules\juce_audio_formats\codecs + + + Juce Modules\juce_audio_formats\codecs + + + Juce Modules\juce_audio_formats\codecs + + + Juce Modules\juce_audio_formats\codecs + + + Juce Modules\juce_audio_formats\codecs + + + Juce Modules\juce_audio_formats\sampler + + + Juce Modules\juce_audio_formats + + + Juce Modules\juce_audio_processors\processors + + + Juce Modules\juce_audio_processors\processors + + + Juce Modules\juce_audio_processors\processors + + + Juce Modules\juce_audio_processors\processors + + + Juce Modules\juce_audio_processors\processors + + + Juce Modules\juce_audio_processors\format + + + Juce Modules\juce_audio_processors\format + + + Juce Modules\juce_audio_processors\format_types + + + Juce Modules\juce_audio_processors\format_types + + + Juce Modules\juce_audio_processors\scanning + + + Juce Modules\juce_audio_processors\scanning + + + Juce Modules\juce_audio_processors\scanning + + + Juce Modules\juce_audio_processors + + + Juce Modules\juce_audio_utils\gui + + + Juce Modules\juce_audio_utils\gui + + + Juce Modules\juce_audio_utils\gui + + + Juce Modules\juce_audio_utils\gui + + + Juce Modules\juce_audio_utils\players + + + Juce Modules\juce_audio_utils + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\maths + + + Juce Modules\juce_core\maths + + + Juce Modules\juce_core\maths + + + Juce Modules\juce_core\memory + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\time + + + Juce Modules\juce_core\time + + + Juce Modules\juce_core\time + + + Juce Modules\juce_core\files + + + Juce Modules\juce_core\files + + + Juce Modules\juce_core\files + + + Juce Modules\juce_core\files + + + Juce Modules\juce_core\files + + + Juce Modules\juce_core\files + + + Juce Modules\juce_core\network + + + Juce Modules\juce_core\network + + + Juce Modules\juce_core\network + + + Juce Modules\juce_core\network + + + Juce Modules\juce_core\streams + + + Juce Modules\juce_core\streams + + + Juce Modules\juce_core\streams + + + Juce Modules\juce_core\streams + + + Juce Modules\juce_core\streams + + + Juce Modules\juce_core\streams + + + Juce Modules\juce_core\streams + + + Juce Modules\juce_core\logging + + + Juce Modules\juce_core\logging + + + Juce Modules\juce_core\system + + + Juce Modules\juce_core\xml + + + Juce Modules\juce_core\xml + + + Juce Modules\juce_core\json + + + Juce Modules\juce_core\zip + + + Juce Modules\juce_core\zip + + + Juce Modules\juce_core\zip + + + Juce Modules\juce_core\unit_tests + + + Juce Modules\juce_core\misc + + + Juce Modules\juce_core\misc + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core + + + Juce Modules\juce_cryptography\encryption + + + Juce Modules\juce_cryptography\encryption + + + Juce Modules\juce_cryptography\encryption + + + Juce Modules\juce_cryptography\hashing + + + Juce Modules\juce_cryptography\hashing + + + Juce Modules\juce_cryptography + + + Juce Modules\juce_data_structures\values + + + Juce Modules\juce_data_structures\values + + + Juce Modules\juce_data_structures\undomanager + + + Juce Modules\juce_data_structures\app_properties + + + Juce Modules\juce_data_structures\app_properties + + + Juce Modules\juce_data_structures + + + Juce Modules\juce_events\messages + + + Juce Modules\juce_events\messages + + + Juce Modules\juce_events\messages + + + Juce Modules\juce_events\messages + + + Juce Modules\juce_events\timers + + + Juce Modules\juce_events\timers + + + Juce Modules\juce_events\broadcasters + + + Juce Modules\juce_events\broadcasters + + + Juce Modules\juce_events\broadcasters + + + Juce Modules\juce_events\interprocess + + + Juce Modules\juce_events\interprocess + + + Juce Modules\juce_events\native + + + Juce Modules\juce_events\native + + + Juce Modules\juce_events\native + + + Juce Modules\juce_events\native + + + Juce Modules\juce_events\native + + + Juce Modules\juce_events + + + Juce Modules\juce_graphics\colour + + + Juce Modules\juce_graphics\colour + + + Juce Modules\juce_graphics\colour + + + Juce Modules\juce_graphics\colour + + + Juce Modules\juce_graphics\contexts + + + Juce Modules\juce_graphics\contexts + + + Juce Modules\juce_graphics\contexts + + + Juce Modules\juce_graphics\images + + + Juce Modules\juce_graphics\images + + + Juce Modules\juce_graphics\images + + + Juce Modules\juce_graphics\images + + + Juce Modules\juce_graphics\image_formats + + + Juce Modules\juce_graphics\image_formats + + + Juce Modules\juce_graphics\image_formats + + + Juce Modules\juce_graphics\geometry + + + Juce Modules\juce_graphics\geometry + + + Juce Modules\juce_graphics\geometry + + + Juce Modules\juce_graphics\geometry + + + Juce Modules\juce_graphics\geometry + + + Juce Modules\juce_graphics\geometry + + + Juce Modules\juce_graphics\placement + + + Juce Modules\juce_graphics\placement + + + Juce Modules\juce_graphics\fonts + + + Juce Modules\juce_graphics\fonts + + + Juce Modules\juce_graphics\fonts + + + Juce Modules\juce_graphics\fonts + + + Juce Modules\juce_graphics\fonts + + + Juce Modules\juce_graphics\fonts + + + Juce Modules\juce_graphics\effects + + + Juce Modules\juce_graphics\effects + + + Juce Modules\juce_graphics\native + + + Juce Modules\juce_graphics\native + + + Juce Modules\juce_graphics\native + + + Juce Modules\juce_graphics\native + + + Juce Modules\juce_graphics\native + + + Juce Modules\juce_graphics\native + + + Juce Modules\juce_graphics\native + + + Juce Modules\juce_graphics\native + + + Juce Modules\juce_graphics\native + + + Juce Modules\juce_graphics + + + Juce Modules\juce_gui_basics\components + + + Juce Modules\juce_gui_basics\components + + + Juce Modules\juce_gui_basics\components + + + Juce Modules\juce_gui_basics\components + + + Juce Modules\juce_gui_basics\mouse + + + Juce Modules\juce_gui_basics\mouse + + + Juce Modules\juce_gui_basics\mouse + + + Juce Modules\juce_gui_basics\mouse + + + Juce Modules\juce_gui_basics\mouse + + + Juce Modules\juce_gui_basics\mouse + + + Juce Modules\juce_gui_basics\keyboard + + + Juce Modules\juce_gui_basics\keyboard + + + Juce Modules\juce_gui_basics\keyboard + + + Juce Modules\juce_gui_basics\keyboard + + + Juce Modules\juce_gui_basics\keyboard + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\windows + + + Juce Modules\juce_gui_basics\windows + + + Juce Modules\juce_gui_basics\windows + + + Juce Modules\juce_gui_basics\windows + + + Juce Modules\juce_gui_basics\windows + + + Juce Modules\juce_gui_basics\windows + + + Juce Modules\juce_gui_basics\windows + + + Juce Modules\juce_gui_basics\windows + + + Juce Modules\juce_gui_basics\windows + + + Juce Modules\juce_gui_basics\menus + + + Juce Modules\juce_gui_basics\menus + + + Juce Modules\juce_gui_basics\menus + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\buttons + + + Juce Modules\juce_gui_basics\buttons + + + Juce Modules\juce_gui_basics\buttons + + + Juce Modules\juce_gui_basics\buttons + + + Juce Modules\juce_gui_basics\buttons + + + Juce Modules\juce_gui_basics\buttons + + + Juce Modules\juce_gui_basics\buttons + + + Juce Modules\juce_gui_basics\buttons + + + Juce Modules\juce_gui_basics\buttons + + + Juce Modules\juce_gui_basics\positioning + + + Juce Modules\juce_gui_basics\positioning + + + Juce Modules\juce_gui_basics\positioning + + + Juce Modules\juce_gui_basics\positioning + + + Juce Modules\juce_gui_basics\positioning + + + Juce Modules\juce_gui_basics\positioning + + + Juce Modules\juce_gui_basics\positioning + + + Juce Modules\juce_gui_basics\drawables + + + Juce Modules\juce_gui_basics\drawables + + + Juce Modules\juce_gui_basics\drawables + + + Juce Modules\juce_gui_basics\drawables + + + Juce Modules\juce_gui_basics\drawables + + + Juce Modules\juce_gui_basics\drawables + + + Juce Modules\juce_gui_basics\drawables + + + Juce Modules\juce_gui_basics\drawables + + + Juce Modules\juce_gui_basics\properties + + + Juce Modules\juce_gui_basics\properties + + + Juce Modules\juce_gui_basics\properties + + + Juce Modules\juce_gui_basics\properties + + + Juce Modules\juce_gui_basics\properties + + + Juce Modules\juce_gui_basics\properties + + + Juce Modules\juce_gui_basics\properties + + + Juce Modules\juce_gui_basics\lookandfeel + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\commands + + + Juce Modules\juce_gui_basics\commands + + + Juce Modules\juce_gui_basics\commands + + + Juce Modules\juce_gui_basics\commands + + + Juce Modules\juce_gui_basics\misc + + + Juce Modules\juce_gui_basics\misc + + + Juce Modules\juce_gui_basics\application + + + Juce Modules\juce_gui_basics\native + + + Juce Modules\juce_gui_basics\native + + + Juce Modules\juce_gui_basics\native + + + Juce Modules\juce_gui_basics\native + + + Juce Modules\juce_gui_basics\native + + + Juce Modules\juce_gui_basics\native + + + Juce Modules\juce_gui_basics\native + + + Juce Modules\juce_gui_basics\native + + + Juce Modules\juce_gui_basics\native + + + Juce Modules\juce_gui_basics\native + + + Juce Modules\juce_gui_basics\native + + + Juce Modules\juce_gui_basics\native + + + Juce Modules\juce_gui_basics\native + + + Juce Modules\juce_gui_basics\native + + + Juce Modules\juce_gui_basics\native + + + Juce Modules\juce_gui_basics + + + Juce Modules\juce_gui_extra\code_editor + + + Juce Modules\juce_gui_extra\code_editor + + + Juce Modules\juce_gui_extra\code_editor + + + Juce Modules\juce_gui_extra\documents + + + Juce Modules\juce_gui_extra\lookandfeel + + + Juce Modules\juce_gui_extra\misc + + + Juce Modules\juce_gui_extra\misc + + + Juce Modules\juce_gui_extra\misc + + + Juce Modules\juce_gui_extra\misc + + + Juce Modules\juce_gui_extra\misc + + + Juce Modules\juce_gui_extra\misc + + + Juce Modules\juce_gui_extra\misc + + + Juce Modules\juce_gui_extra\native + + + Juce Modules\juce_gui_extra\native + + + Juce Modules\juce_gui_extra\native + + + Juce Modules\juce_gui_extra\native + + + Juce Modules\juce_gui_extra\native + + + Juce Modules\juce_gui_extra\native + + + Juce Modules\juce_gui_extra\native + + + Juce Modules\juce_gui_extra\native + + + Juce Modules\juce_gui_extra\native + + + Juce Modules\juce_gui_extra\native + + + Juce Modules\juce_gui_extra + + + Juce Modules\juce_opengl\opengl + + + Juce Modules\juce_opengl\opengl + + + Juce Modules\juce_opengl\opengl + + + Juce Modules\juce_opengl\opengl + + + Juce Modules\juce_opengl\opengl + + + Juce Modules\juce_opengl\opengl + + + Juce Modules\juce_opengl\opengl + + + Juce Modules\juce_opengl\opengl + + + Juce Modules\juce_opengl\native + + + Juce Modules\juce_opengl\native + + + Juce Modules\juce_opengl\native + + + Juce Modules\juce_opengl\native + + + Juce Modules\juce_opengl\native + + + Juce Modules\juce_opengl + + + Juce Modules\juce_video\native + + + Juce Modules\juce_video\native + + + Juce Modules\juce_video\native + + + Juce Modules\juce_video\native + + + Juce Modules\juce_video\native + + + Juce Modules\juce_video\native + + + Juce Modules\juce_video + Juce Library Code - + Juce Library Code - + Juce Library Code - + Juce Library Code - + + Juce Library Code + + + Juce Library Code + + + Juce Library Code + + + Juce Library Code + + + Juce Library Code + + + Juce Library Code + + + Juce Library Code + + + Juce Library Code + + + Juce Library Code + + + Juce Library Code + + Juce Library Code @@ -144,6 +1632,1239 @@ Juce Demo\Demos + + Juce Modules\juce_audio_basics\buffers + + + Juce Modules\juce_audio_basics\buffers + + + Juce Modules\juce_audio_basics\midi + + + Juce Modules\juce_audio_basics\midi + + + Juce Modules\juce_audio_basics\midi + + + Juce Modules\juce_audio_basics\midi + + + Juce Modules\juce_audio_basics\midi + + + Juce Modules\juce_audio_basics\effects + + + Juce Modules\juce_audio_basics\effects + + + Juce Modules\juce_audio_basics\effects + + + Juce Modules\juce_audio_basics\sources + + + Juce Modules\juce_audio_basics\sources + + + Juce Modules\juce_audio_basics\sources + + + Juce Modules\juce_audio_basics\sources + + + Juce Modules\juce_audio_basics\sources + + + Juce Modules\juce_audio_basics\sources + + + Juce Modules\juce_audio_basics\sources + + + Juce Modules\juce_audio_basics\sources + + + Juce Modules\juce_audio_basics\sources + + + Juce Modules\juce_audio_basics\synthesisers + + + Juce Modules\juce_audio_basics + + + Juce Modules\juce_audio_devices\audio_io + + + Juce Modules\juce_audio_devices\audio_io + + + Juce Modules\juce_audio_devices\audio_io + + + Juce Modules\juce_audio_devices\midi_io + + + Juce Modules\juce_audio_devices\midi_io + + + Juce Modules\juce_audio_devices\midi_io + + + Juce Modules\juce_audio_devices\sources + + + Juce Modules\juce_audio_devices\sources + + + Juce Modules\juce_audio_devices\audio_cd + + + Juce Modules\juce_audio_devices\audio_cd + + + Juce Modules\juce_audio_devices\native + + + Juce Modules\juce_audio_devices + + + Juce Modules\juce_audio_formats\format + + + Juce Modules\juce_audio_formats\format + + + Juce Modules\juce_audio_formats\format + + + Juce Modules\juce_audio_formats\format + + + Juce Modules\juce_audio_formats\format + + + Juce Modules\juce_audio_formats\format + + + Juce Modules\juce_audio_formats\codecs + + + Juce Modules\juce_audio_formats\codecs + + + Juce Modules\juce_audio_formats\codecs + + + Juce Modules\juce_audio_formats\codecs + + + Juce Modules\juce_audio_formats\codecs + + + Juce Modules\juce_audio_formats\codecs + + + Juce Modules\juce_audio_formats\codecs + + + Juce Modules\juce_audio_formats\codecs + + + Juce Modules\juce_audio_formats\sampler + + + Juce Modules\juce_audio_formats + + + Juce Modules\juce_audio_processors\processors + + + Juce Modules\juce_audio_processors\processors + + + Juce Modules\juce_audio_processors\processors + + + Juce Modules\juce_audio_processors\processors + + + Juce Modules\juce_audio_processors\processors + + + Juce Modules\juce_audio_processors\processors + + + Juce Modules\juce_audio_processors\processors + + + Juce Modules\juce_audio_processors\processors + + + Juce Modules\juce_audio_processors\format + + + Juce Modules\juce_audio_processors\format + + + Juce Modules\juce_audio_processors\format_types + + + Juce Modules\juce_audio_processors\format_types + + + Juce Modules\juce_audio_processors\format_types + + + Juce Modules\juce_audio_processors\format_types + + + Juce Modules\juce_audio_processors\format_types + + + Juce Modules\juce_audio_processors\scanning + + + Juce Modules\juce_audio_processors\scanning + + + Juce Modules\juce_audio_processors\scanning + + + Juce Modules\juce_audio_processors + + + Juce Modules\juce_audio_utils\gui + + + Juce Modules\juce_audio_utils\gui + + + Juce Modules\juce_audio_utils\gui + + + Juce Modules\juce_audio_utils\gui + + + Juce Modules\juce_audio_utils\players + + + Juce Modules\juce_audio_utils + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\text + + + Juce Modules\juce_core\maths + + + Juce Modules\juce_core\maths + + + Juce Modules\juce_core\maths + + + Juce Modules\juce_core\maths + + + Juce Modules\juce_core\maths + + + Juce Modules\juce_core\memory + + + Juce Modules\juce_core\memory + + + Juce Modules\juce_core\memory + + + Juce Modules\juce_core\memory + + + Juce Modules\juce_core\memory + + + Juce Modules\juce_core\memory + + + Juce Modules\juce_core\memory + + + Juce Modules\juce_core\memory + + + Juce Modules\juce_core\memory + + + Juce Modules\juce_core\memory + + + Juce Modules\juce_core\memory + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\containers + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\threads + + + Juce Modules\juce_core\time + + + Juce Modules\juce_core\time + + + Juce Modules\juce_core\time + + + Juce Modules\juce_core\files + + + Juce Modules\juce_core\files + + + Juce Modules\juce_core\files + + + Juce Modules\juce_core\files + + + Juce Modules\juce_core\files + + + Juce Modules\juce_core\files + + + Juce Modules\juce_core\files + + + Juce Modules\juce_core\network + + + Juce Modules\juce_core\network + + + Juce Modules\juce_core\network + + + Juce Modules\juce_core\network + + + Juce Modules\juce_core\streams + + + Juce Modules\juce_core\streams + + + Juce Modules\juce_core\streams + + + Juce Modules\juce_core\streams + + + Juce Modules\juce_core\streams + + + Juce Modules\juce_core\streams + + + Juce Modules\juce_core\streams + + + Juce Modules\juce_core\streams + + + Juce Modules\juce_core\logging + + + Juce Modules\juce_core\logging + + + Juce Modules\juce_core\system + + + Juce Modules\juce_core\system + + + Juce Modules\juce_core\system + + + Juce Modules\juce_core\system + + + Juce Modules\juce_core\xml + + + Juce Modules\juce_core\xml + + + Juce Modules\juce_core\json + + + Juce Modules\juce_core\zip + + + Juce Modules\juce_core\zip + + + Juce Modules\juce_core\zip + + + Juce Modules\juce_core\unit_tests + + + Juce Modules\juce_core\misc + + + Juce Modules\juce_core\misc + + + Juce Modules\juce_core\misc + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core\native + + + Juce Modules\juce_core + + + Juce Modules\juce_cryptography\encryption + + + Juce Modules\juce_cryptography\encryption + + + Juce Modules\juce_cryptography\encryption + + + Juce Modules\juce_cryptography\hashing + + + Juce Modules\juce_cryptography\hashing + + + Juce Modules\juce_cryptography + + + Juce Modules\juce_data_structures\values + + + Juce Modules\juce_data_structures\values + + + Juce Modules\juce_data_structures\undomanager + + + Juce Modules\juce_data_structures\undomanager + + + Juce Modules\juce_data_structures\app_properties + + + Juce Modules\juce_data_structures\app_properties + + + Juce Modules\juce_data_structures + + + Juce Modules\juce_events\messages + + + Juce Modules\juce_events\messages + + + Juce Modules\juce_events\messages + + + Juce Modules\juce_events\messages + + + Juce Modules\juce_events\messages + + + Juce Modules\juce_events\messages + + + Juce Modules\juce_events\timers + + + Juce Modules\juce_events\timers + + + Juce Modules\juce_events\broadcasters + + + Juce Modules\juce_events\broadcasters + + + Juce Modules\juce_events\broadcasters + + + Juce Modules\juce_events\broadcasters + + + Juce Modules\juce_events\broadcasters + + + Juce Modules\juce_events\broadcasters + + + Juce Modules\juce_events\interprocess + + + Juce Modules\juce_events\interprocess + + + Juce Modules\juce_events\native + + + Juce Modules\juce_events\native + + + Juce Modules\juce_events\native + + + Juce Modules\juce_events + + + Juce Modules\juce_graphics\colour + + + Juce Modules\juce_graphics\colour + + + Juce Modules\juce_graphics\colour + + + Juce Modules\juce_graphics\colour + + + Juce Modules\juce_graphics\colour + + + Juce Modules\juce_graphics\contexts + + + Juce Modules\juce_graphics\contexts + + + Juce Modules\juce_graphics\contexts + + + Juce Modules\juce_graphics\contexts + + + Juce Modules\juce_graphics\images + + + Juce Modules\juce_graphics\images + + + Juce Modules\juce_graphics\images + + + Juce Modules\juce_graphics\images + + + Juce Modules\juce_graphics\geometry + + + Juce Modules\juce_graphics\geometry + + + Juce Modules\juce_graphics\geometry + + + Juce Modules\juce_graphics\geometry + + + Juce Modules\juce_graphics\geometry + + + Juce Modules\juce_graphics\geometry + + + Juce Modules\juce_graphics\geometry + + + Juce Modules\juce_graphics\geometry + + + Juce Modules\juce_graphics\geometry + + + Juce Modules\juce_graphics\geometry + + + Juce Modules\juce_graphics\placement + + + Juce Modules\juce_graphics\placement + + + Juce Modules\juce_graphics\fonts + + + Juce Modules\juce_graphics\fonts + + + Juce Modules\juce_graphics\fonts + + + Juce Modules\juce_graphics\fonts + + + Juce Modules\juce_graphics\fonts + + + Juce Modules\juce_graphics\fonts + + + Juce Modules\juce_graphics\effects + + + Juce Modules\juce_graphics\effects + + + Juce Modules\juce_graphics\effects + + + Juce Modules\juce_graphics\native + + + Juce Modules\juce_graphics\native + + + Juce Modules\juce_graphics\native + + + Juce Modules\juce_graphics + + + Juce Modules\juce_gui_basics\components + + + Juce Modules\juce_gui_basics\components + + + Juce Modules\juce_gui_basics\components + + + Juce Modules\juce_gui_basics\components + + + Juce Modules\juce_gui_basics\components + + + Juce Modules\juce_gui_basics\mouse + + + Juce Modules\juce_gui_basics\mouse + + + Juce Modules\juce_gui_basics\mouse + + + Juce Modules\juce_gui_basics\mouse + + + Juce Modules\juce_gui_basics\mouse + + + Juce Modules\juce_gui_basics\mouse + + + Juce Modules\juce_gui_basics\mouse + + + Juce Modules\juce_gui_basics\mouse + + + Juce Modules\juce_gui_basics\mouse + + + Juce Modules\juce_gui_basics\mouse + + + Juce Modules\juce_gui_basics\mouse + + + Juce Modules\juce_gui_basics\keyboard + + + Juce Modules\juce_gui_basics\keyboard + + + Juce Modules\juce_gui_basics\keyboard + + + Juce Modules\juce_gui_basics\keyboard + + + Juce Modules\juce_gui_basics\keyboard + + + Juce Modules\juce_gui_basics\keyboard + + + Juce Modules\juce_gui_basics\keyboard + + + Juce Modules\juce_gui_basics\keyboard + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\widgets + + + Juce Modules\juce_gui_basics\windows + + + Juce Modules\juce_gui_basics\windows + + + Juce Modules\juce_gui_basics\windows + + + Juce Modules\juce_gui_basics\windows + + + Juce Modules\juce_gui_basics\windows + + + Juce Modules\juce_gui_basics\windows + + + Juce Modules\juce_gui_basics\windows + + + Juce Modules\juce_gui_basics\windows + + + Juce Modules\juce_gui_basics\windows + + + Juce Modules\juce_gui_basics\windows + + + Juce Modules\juce_gui_basics\menus + + + Juce Modules\juce_gui_basics\menus + + + Juce Modules\juce_gui_basics\menus + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\layout + + + Juce Modules\juce_gui_basics\buttons + + + Juce Modules\juce_gui_basics\buttons + + + Juce Modules\juce_gui_basics\buttons + + + Juce Modules\juce_gui_basics\buttons + + + Juce Modules\juce_gui_basics\buttons + + + Juce Modules\juce_gui_basics\buttons + + + Juce Modules\juce_gui_basics\buttons + + + Juce Modules\juce_gui_basics\buttons + + + Juce Modules\juce_gui_basics\buttons + + + Juce Modules\juce_gui_basics\positioning + + + Juce Modules\juce_gui_basics\positioning + + + Juce Modules\juce_gui_basics\positioning + + + Juce Modules\juce_gui_basics\positioning + + + Juce Modules\juce_gui_basics\positioning + + + Juce Modules\juce_gui_basics\positioning + + + Juce Modules\juce_gui_basics\positioning + + + Juce Modules\juce_gui_basics\drawables + + + Juce Modules\juce_gui_basics\drawables + + + Juce Modules\juce_gui_basics\drawables + + + Juce Modules\juce_gui_basics\drawables + + + Juce Modules\juce_gui_basics\drawables + + + Juce Modules\juce_gui_basics\drawables + + + Juce Modules\juce_gui_basics\drawables + + + Juce Modules\juce_gui_basics\properties + + + Juce Modules\juce_gui_basics\properties + + + Juce Modules\juce_gui_basics\properties + + + Juce Modules\juce_gui_basics\properties + + + Juce Modules\juce_gui_basics\properties + + + Juce Modules\juce_gui_basics\properties + + + Juce Modules\juce_gui_basics\properties + + + Juce Modules\juce_gui_basics\lookandfeel + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\filebrowser + + + Juce Modules\juce_gui_basics\commands + + + Juce Modules\juce_gui_basics\commands + + + Juce Modules\juce_gui_basics\commands + + + Juce Modules\juce_gui_basics\commands + + + Juce Modules\juce_gui_basics\commands + + + Juce Modules\juce_gui_basics\misc + + + Juce Modules\juce_gui_basics\misc + + + Juce Modules\juce_gui_basics\application + + + Juce Modules\juce_gui_basics\application + + + Juce Modules\juce_gui_basics\native + + + Juce Modules\juce_gui_basics + + + Juce Modules\juce_gui_extra\code_editor + + + Juce Modules\juce_gui_extra\code_editor + + + Juce Modules\juce_gui_extra\code_editor + + + Juce Modules\juce_gui_extra\code_editor + + + Juce Modules\juce_gui_extra\documents + + + Juce Modules\juce_gui_extra\embedding + + + Juce Modules\juce_gui_extra\embedding + + + Juce Modules\juce_gui_extra\embedding + + + Juce Modules\juce_gui_extra\lookandfeel + + + Juce Modules\juce_gui_extra\misc + + + Juce Modules\juce_gui_extra\misc + + + Juce Modules\juce_gui_extra\misc + + + Juce Modules\juce_gui_extra\misc + + + Juce Modules\juce_gui_extra\misc + + + Juce Modules\juce_gui_extra\misc + + + Juce Modules\juce_gui_extra\misc + + + Juce Modules\juce_gui_extra\misc + + + Juce Modules\juce_gui_extra\misc + + + Juce Modules\juce_gui_extra\native + + + Juce Modules\juce_gui_extra + + + Juce Modules\juce_opengl\opengl + + + Juce Modules\juce_opengl\opengl + + + Juce Modules\juce_opengl\opengl + + + Juce Modules\juce_opengl\opengl + + + Juce Modules\juce_opengl\opengl + + + Juce Modules\juce_opengl\opengl + + + Juce Modules\juce_opengl\opengl + + + Juce Modules\juce_opengl\opengl + + + Juce Modules\juce_opengl\opengl + + + Juce Modules\juce_opengl\opengl + + + Juce Modules\juce_opengl\opengl + + + Juce Modules\juce_opengl\opengl + + + Juce Modules\juce_opengl\opengl + + + Juce Modules\juce_opengl\native + + + Juce Modules\juce_opengl\native + + + Juce Modules\juce_opengl + + + Juce Modules\juce_video\playback + + + Juce Modules\juce_video\playback + + + Juce Modules\juce_video\capture + + + Juce Modules\juce_video + Juce Library Code diff --git a/extras/JuceDemo/Builds/VisualStudio2010/icon.ico b/extras/JuceDemo/Builds/VisualStudio2010/icon.ico index b5dbab53ed..8a216cd7f4 100644 Binary files a/extras/JuceDemo/Builds/VisualStudio2010/icon.ico and b/extras/JuceDemo/Builds/VisualStudio2010/icon.ico differ diff --git a/extras/JuceDemo/Builds/iOS/Icon.icns b/extras/JuceDemo/Builds/iOS/Icon.icns index 7763077cfb..a1d2ba8423 100644 Binary files a/extras/JuceDemo/Builds/iOS/Icon.icns and b/extras/JuceDemo/Builds/iOS/Icon.icns differ diff --git a/extras/JuceDemo/Builds/iOS/Juce Demo.xcodeproj/project.pbxproj b/extras/JuceDemo/Builds/iOS/Juce Demo.xcodeproj/project.pbxproj index 6c93b035fc..adae1a2f00 100644 --- a/extras/JuceDemo/Builds/iOS/Juce Demo.xcodeproj/project.pbxproj +++ b/extras/JuceDemo/Builds/iOS/Juce Demo.xcodeproj/project.pbxproj @@ -3,192 +3,2020 @@ archiveVersion = 1; classes = { }; - objectVersion = 45; + objectVersion = 46; objects = { - 36AEC0EAE7AB9D061AD9EFEF = { isa = PBXBuildFile; fileRef = 7B6D428682221857EAEA1C7D; }; - 7938A4501BDD574C4121B988 = { isa = PBXBuildFile; fileRef = 0D376A9686DFA1EAF983841C; }; - 8223C2805B1A9ECA27926EB5 = { isa = PBXBuildFile; fileRef = 1CFED196602026EF91937A0E; }; - 3BE296F09A47C0ECE4D91CF5 = { isa = PBXBuildFile; fileRef = 90E63FC1333F952D526FF194; }; - 268F2BF480CF9844E2F2B974 = { isa = PBXBuildFile; fileRef = B72353F9624D99DB6F93E400; }; - F1BAE9DCD179C8784FF28F8D = { isa = PBXBuildFile; fileRef = 4A96850C150C1C6D87A0D21A; }; - 1DF18F6B9CCFF7BD07C36AC2 = { isa = PBXBuildFile; fileRef = CE3A43E4FB4D61350C000764; }; - C0A3C433D146C7E1FFCADFB2 = { isa = PBXBuildFile; fileRef = 4ADECB09FD213B2E910EA229; }; - 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; }; - 940BE0338CC1FEB65B4B82E2 = { isa = PBXBuildFile; fileRef = E072353A8A1F26CFB7090905; }; - 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; }; - 7B6D428682221857EAEA1C7D = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioToolbox.framework; path = System/Library/Frameworks/AudioToolbox.framework; sourceTree = SDKROOT; }; - 0D376A9686DFA1EAF983841C = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = System/Library/Frameworks/CoreGraphics.framework; sourceTree = SDKROOT; }; - 1CFED196602026EF91937A0E = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreText.framework; path = System/Library/Frameworks/CoreText.framework; sourceTree = SDKROOT; }; - 90E63FC1333F952D526FF194 = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; }; - B72353F9624D99DB6F93E400 = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGLES.framework; path = System/Library/Frameworks/OpenGLES.framework; sourceTree = SDKROOT; }; - 4A96850C150C1C6D87A0D21A = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = System/Library/Frameworks/QuartzCore.framework; sourceTree = SDKROOT; }; - CE3A43E4FB4D61350C000764 = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.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"; }; - 4ADECB09FD213B2E910EA229 = { isa = PBXFileReference; lastKnownFileType = file.icns; name = Icon.icns; path = Icon.icns; 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"; }; - E072353A8A1F26CFB7090905 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = DirectShowDemo.cpp; path = ../../Source/demos/DirectShowDemo.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"; }; - 3369CDF7AFD79D6F3B3744B1 = { isa = PBXFileReference; lastKnownFileType = image.png; name = "juce_icon.png"; path = "../../Binary Data/juce_icon.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"; }; - 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"; }; - A6B37799E63CCE882A3383FB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = JuceHeader.h; path = ../../JuceLibraryCode/JuceHeader.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, - E072353A8A1F26CFB7090905, - F23738E4EFD2323063F82F1C, - B7F4DAFA5F8F1FC976C8B55D, - F7620D8D567CCE463ADDE0A6, - DA3BCFCC5BF07FC689DB5C34, - D6EF70641473A3E7C0DC5168, - 3BC17D4051063C1BF66548C6, - A6FB61B33BDDB0880203370C, - 08B45C29F5EEC874E014D122, - D5F519861915C136BAA8D87A, - 402768B1A52E32348D505F18, - F2EB42A070E349D77ACF77C9, - CF7FFEAFF4F386ED4DAED523 ); name = Demos; sourceTree = ""; }; - 7B2518B268DCBBF7B74F2B1D = { isa = PBXGroup; children = ( - ACFD7F6AAFC09C234D15501D, - A869663CA0E96FE15BB42A97, - A76B69386F1F19647804510D, - 013E12213AD7B4BEB28A31BE, - 3369CDF7AFD79D6F3B3744B1, - C7327AD5191A22C1FBD4F5F9 ); name = "Binary Data"; sourceTree = ""; }; - D6A4B94A747BFCF299B17932 = { isa = PBXGroup; children = ( - 885A20D277AD743C21C822B5, - 42291DB48BF81754D90FE200, - 49138F5652E637AA67CD4B70, - 18BDC68F9701862603871A7A, - 1045A435754FDEACC6D7259C, - 7B2518B268DCBBF7B74F2B1D ); name = "Juce Demo"; sourceTree = ""; }; - 4C2E644EAC72C263D09C74BB = { isa = PBXGroup; children = ( - EE37A0ECE471A928C6170F9B, - E6EF5CE04768BA5B10050D51, - CC7EB9777A4DE3408705625C, - A6B37799E63CCE882A3383FB, - BA05C84C3258A1978AF3D357, - F42C91375F3314CA6EE65697, - 4D526A336B2E97ED42CADAD7, - 8679333E781A0A0116AE5D26 ); name = "Juce Library Code"; sourceTree = ""; }; - 019CD423F1EFF7A1A0A079DD = { isa = PBXGroup; children = ( - 1A9DEA62F6A3CD1FB5CF105B, - 4ADECB09FD213B2E910EA229 ); name = Resources; sourceTree = ""; }; - 244B9AF7D858999910FD243E = { isa = PBXGroup; children = ( - 7B6D428682221857EAEA1C7D, - 0D376A9686DFA1EAF983841C, - 1CFED196602026EF91937A0E, - 90E63FC1333F952D526FF194, - B72353F9624D99DB6F93E400, - 4A96850C150C1C6D87A0D21A, - CE3A43E4FB4D61350C000764 ); name = Frameworks; sourceTree = ""; }; - 3F406773369804D0FBF2789A = { isa = PBXGroup; children = ( - 39B98C60B57B831FE5215CDD ); name = Products; sourceTree = ""; }; - 1609BCDD8EC2BA2A162B68F3 = { isa = PBXGroup; children = ( - D6A4B94A747BFCF299B17932, - 4C2E644EAC72C263D09C74BB, - 019CD423F1EFF7A1A0A079DD, - 244B9AF7D858999910FD243E, - 3F406773369804D0FBF2789A ); name = Source; sourceTree = ""; }; - F46B3E8DBAFA746E04F4F62C = { isa = XCBuildConfiguration; buildSettings = { - PREBINDING = NO; - HEADER_SEARCH_PATHS = " $(inherited)"; + 0BCC52797AD97E09EA6DF0E4 = { isa = PBXBuildFile; fileRef = DEB23C98FEC261260F63B6A4; }; + 874D7495FAC2F4537D6AA989 = { isa = PBXBuildFile; fileRef = EE3E9902579904E57D1A5A18; }; + F544EDBF5507628552174493 = { isa = PBXBuildFile; fileRef = D45EF873A4BD7D0E56274D79; }; + A2DE43FDC367184A8239D7B2 = { isa = PBXBuildFile; fileRef = 3E51C5F35FB095AF4F0E373F; }; + 74CCB5B6EA1B00750D1831DA = { isa = PBXBuildFile; fileRef = 6FCC44A5DB0B881454AAD300; }; + B2E59607B91E74E94565E022 = { isa = PBXBuildFile; fileRef = 2425625EE014356B5980B238; }; + 87EDE18A8381271AE00E982D = { isa = PBXBuildFile; fileRef = 70350B2642B3D062D0A8D239; }; + 44198BB3EF9EB0F469BA45E7 = { isa = PBXBuildFile; fileRef = 72421270611D3B09781CA634; }; + 933C39A0A20A89B767742D07 = { isa = PBXBuildFile; fileRef = 16793951B75EADE5C08FD129; }; + F7DF6AC4276AD42F4F360E37 = { isa = PBXBuildFile; fileRef = D4CA129DE8BC9F6EDC2BCAD2; }; + B99620051F4C5A2FAB1DE49C = { isa = PBXBuildFile; fileRef = 2CE3420FBFD3136621EAFB1D; }; + 49FBA0236A1917CEF50FC456 = { isa = PBXBuildFile; fileRef = D0C3588FF8EF229B8F0CBCA8; }; + F5B4E1CC211F5215D6E05B44 = { isa = PBXBuildFile; fileRef = F10EEBAD564A55F50CEE7181; }; + 6D221136E94E784E793B9CD5 = { isa = PBXBuildFile; fileRef = 200550A2DDDB012E26D6D005; }; + B43C4A8F569137053CCEAD76 = { isa = PBXBuildFile; fileRef = F87BBC8FD2374628CFBC2EA6; }; + 127ED5764EA5A3BF3CEA5BBD = { isa = PBXBuildFile; fileRef = 2275EB468CEA505ADE14C225; }; + C4FCFE5612A1ED999FB9D51D = { isa = PBXBuildFile; fileRef = 690BE5039AADEF787D6E13D9; }; + B2A1C85517169CCEBB79CB9F = { isa = PBXBuildFile; fileRef = 8F37F4E9DB8E42EDF29DE166; }; + 196F67D37488DD92EF434694 = { isa = PBXBuildFile; fileRef = 8A29D461DA6C72497B49189C; }; + BF03F7C64A1FA6A2E15A9780 = { isa = PBXBuildFile; fileRef = 3C35334FE9451182FE7EC2B8; }; + 4CA7D59ACB03776D785FEB12 = { isa = PBXBuildFile; fileRef = 3D11CF883EC31F74D97920D3; }; + 7DFFCAD7929BE7BA645C65ED = { isa = PBXBuildFile; fileRef = 73108C67E00C3C958FFD23D4; }; + BCFD0CA15F13967BF82B26A4 = { isa = PBXBuildFile; fileRef = 83D67DD10BD2ACDC0984ADCB; }; + C33DAAC97DACAEE978D635F0 = { isa = PBXBuildFile; fileRef = 877D61C08ADC5B13C2627327; }; + 4FEDD45FE6A26543E055F259 = { isa = PBXBuildFile; fileRef = 94A9A7DF00C64509E9B5A337; }; + F600FD434B52D887C1FB973D = { isa = PBXBuildFile; fileRef = 81641BC45BAA99D207B153A7; }; + 0C993072AF2728D62BF28094 = { isa = PBXBuildFile; fileRef = 5ED8A827D78184F2E01A5511; }; + 1D0E1EAD88C7EF8CBB16E841 = { isa = PBXBuildFile; fileRef = 01E2555EA1347B8C8CFC438D; }; + 85EB509411E79E3F970C9653 = { isa = PBXBuildFile; fileRef = BD69603F635BE80BC99C7865; }; + C24BF8E3142DBFD0139EFEE9 = { isa = PBXBuildFile; fileRef = C87942E350F974B22047D457; }; + BEBB1C4BA92F6D4CDE224A15 = { isa = PBXBuildFile; fileRef = 6649385F220EB0B654AB61FB; }; + 662202A6B86B11E3DBD96D58 = { isa = PBXBuildFile; fileRef = 579D22DA6ECC930E19B7104A; }; + B00C72D607AF2A98366B40DE = { isa = PBXBuildFile; fileRef = 33DAC2BB94AFCF8EB33A1417; }; + 8938D948E7A216EE7264F500 = { isa = PBXBuildFile; fileRef = 7C7834D5AB7E6656A4CECF2F; }; + BA3DAB221F557B4C346EAFCF = { isa = PBXBuildFile; fileRef = EADE149294A3A3509EC61E6B; }; + 26973D9739CE05EF7F41C687 = { isa = PBXBuildFile; fileRef = 0FCE8CD83D0FA98563EE2920; }; + 020A3C34BE41F0B9B4AC7A64 = { isa = PBXBuildFile; fileRef = 278099898E32942D72AB635A; }; + 845872D67C4313E91DCD3A8E = { isa = PBXBuildFile; fileRef = 868D4BEF6B94EB7BF659CF01; }; + 6488F374D2A9B9FEDAC40859 = { isa = PBXBuildFile; fileRef = 4FC0DDA3086EE26242655E66; }; + F72A0043671FED94178413A1 = { isa = PBXBuildFile; fileRef = 766F3BD777CA786CD6BE023E; }; + B639B9459CB9EBE2A00A37F3 = { isa = PBXBuildFile; fileRef = 890F3D7DA5BC01DACF8E5431; }; + A9BC6DEA9311B5C74977A95E = { isa = PBXBuildFile; fileRef = 575587359A2F65312CE97AC4; }; + 3FCA7FE72D0EF062CB350F88 = { isa = PBXBuildFile; fileRef = 4CE1249813E63913B15BB51E; }; + 574104B02E5C0BFCCDA099B1 = { isa = PBXBuildFile; fileRef = C2072DE0D1FF6AA90A700D25; }; + BF1DE7C7A64706C9FBD7284E = { isa = PBXBuildFile; fileRef = 9AE7533B1AD68245E130B3AC; }; + 4A61E54E2ADD5FBBB1486257 = { isa = PBXBuildFile; fileRef = 49DA3670A8CF79F133914D18; }; + 0074FA7EFC2898B71E22A945 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioTransportSource.h"; path = "../../../../modules/juce_audio_devices/sources/juce_AudioTransportSource.h"; sourceTree = "SOURCE_ROOT"; }; + 013DEB204CA02DFE8B745893 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Variant.h"; path = "../../../../modules/juce_core/containers/juce_Variant.h"; sourceTree = "SOURCE_ROOT"; }; + 014740E7C97145AFAD9BD60C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AlertWindow.cpp"; path = "../../../../modules/juce_gui_basics/windows/juce_AlertWindow.cpp"; sourceTree = "SOURCE_ROOT"; }; + 01E2555EA1347B8C8CFC438D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = ThreadingDemo.cpp; path = ../../Source/demos/ThreadingDemo.cpp; sourceTree = "SOURCE_ROOT"; }; + 0388C01D765585853A700C6A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AlertWindow.h"; path = "../../../../modules/juce_gui_basics/windows/juce_AlertWindow.h"; sourceTree = "SOURCE_ROOT"; }; + 03AB3157D77979CDD2601A86 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TextPropertyComponent.h"; path = "../../../../modules/juce_gui_basics/properties/juce_TextPropertyComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 03DA010C988E825AF3EFAE7A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Network.cpp"; path = "../../../../modules/juce_core/native/juce_win32_Network.cpp"; sourceTree = "SOURCE_ROOT"; }; + 03E820FAB7405937F26D6EF2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_KeyboardFocusTraverser.cpp"; path = "../../../../modules/juce_gui_basics/keyboard/juce_KeyboardFocusTraverser.cpp"; sourceTree = "SOURCE_ROOT"; }; + 04184D8A7003E2E77ED66CFA = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ColourGradient.cpp"; path = "../../../../modules/juce_graphics/colour/juce_ColourGradient.cpp"; sourceTree = "SOURCE_ROOT"; }; + 052964DDB569D0D8C38B89FA = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ResizableCornerComponent.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_ResizableCornerComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 0574EFED0877A72D12A472E5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileLogger.h"; path = "../../../../modules/juce_core/logging/juce_FileLogger.h"; sourceTree = "SOURCE_ROOT"; }; + 05F2CE704CA3BC807CC5E19A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_KeyPress.h"; path = "../../../../modules/juce_gui_basics/keyboard/juce_KeyPress.h"; sourceTree = "SOURCE_ROOT"; }; + 0655D6F5C85104403FC367AC = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioPluginFormatManager.cpp"; path = "../../../../modules/juce_audio_processors/format/juce_AudioPluginFormatManager.cpp"; sourceTree = "SOURCE_ROOT"; }; + 06574539E17A8703E442F691 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RelativeRectangle.cpp"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativeRectangle.cpp"; sourceTree = "SOURCE_ROOT"; }; + 06D8EAABB6D94D55189361D0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Result.cpp"; path = "../../../../modules/juce_core/misc/juce_Result.cpp"; sourceTree = "SOURCE_ROOT"; }; + 070230F8B36CFD14E7EEAD71 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ThreadPool.cpp"; path = "../../../../modules/juce_core/threads/juce_ThreadPool.cpp"; sourceTree = "SOURCE_ROOT"; }; + 07492D83B5CEED0F975EEF77 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Image.cpp"; path = "../../../../modules/juce_graphics/images/juce_Image.cpp"; sourceTree = "SOURCE_ROOT"; }; + 077C8710E1F237529330ED3B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_WaitableEvent.h"; path = "../../../../modules/juce_core/threads/juce_WaitableEvent.h"; sourceTree = "SOURCE_ROOT"; }; + 0782BB99E1CCE0474B695C7D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ApplicationCommandTarget.cpp"; path = "../../../../modules/juce_gui_basics/commands/juce_ApplicationCommandTarget.cpp"; sourceTree = "SOURCE_ROOT"; }; + 08B1356929EB57FE6FCE238F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ModifierKeys.cpp"; path = "../../../../modules/juce_gui_basics/keyboard/juce_ModifierKeys.cpp"; sourceTree = "SOURCE_ROOT"; }; + 08DC64993F213D275B988996 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Colour.h"; path = "../../../../modules/juce_graphics/colour/juce_Colour.h"; sourceTree = "SOURCE_ROOT"; }; + 09768BD4CFA73C85F8353F3A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RelativePoint.cpp"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativePoint.cpp"; sourceTree = "SOURCE_ROOT"; }; + 0A049E4E98CA579D41D98432 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SortedSet.h"; path = "../../../../modules/juce_core/containers/juce_SortedSet.h"; sourceTree = "SOURCE_ROOT"; }; + 0B8D7873618440F42487EB7B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DropShadowEffect.cpp"; path = "../../../../modules/juce_graphics/effects/juce_DropShadowEffect.cpp"; sourceTree = "SOURCE_ROOT"; }; + 0BA047892DDF9066220EEDD2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CharPointer_UTF16.h"; path = "../../../../modules/juce_core/text/juce_CharPointer_UTF16.h"; sourceTree = "SOURCE_ROOT"; }; + 0BBEDD3E8C0C2B7C4B52016A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_Fonts.mm"; path = "../../../../modules/juce_graphics/native/juce_mac_Fonts.mm"; sourceTree = "SOURCE_ROOT"; }; + 0C4CA33345C6952BC8409D71 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ActionListener.h"; path = "../../../../modules/juce_events/broadcasters/juce_ActionListener.h"; sourceTree = "SOURCE_ROOT"; }; + 0C7631EB40FF52D74D3D0A8D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileListComponent.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileListComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 0D244B27274E1E7AB434C32B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioThumbnail.cpp"; path = "../../../../modules/juce_audio_utils/gui/juce_AudioThumbnail.cpp"; sourceTree = "SOURCE_ROOT"; }; + 0D2F4EE7A540CC2AAFD301E4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Misc.cpp"; path = "../../../../modules/juce_core/native/juce_android_Misc.cpp"; sourceTree = "SOURCE_ROOT"; }; + 0D59D15FB8BC9FE203586FB3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioSubsectionReader.cpp"; path = "../../../../modules/juce_audio_formats/format/juce_AudioSubsectionReader.cpp"; sourceTree = "SOURCE_ROOT"; }; + 0DFB01AAFD08E7BAD09DDAA2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CoreAudioFormat.h"; path = "../../../../modules/juce_audio_formats/codecs/juce_CoreAudioFormat.h"; sourceTree = "SOURCE_ROOT"; }; + 0E0F146C817BAD44A024ECC7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ToggleButton.h"; path = "../../../../modules/juce_gui_basics/buttons/juce_ToggleButton.h"; sourceTree = "SOURCE_ROOT"; }; + 0E74D38CAF5F8C914132F4D5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_BubbleMessageComponent.cpp"; path = "../../../../modules/juce_gui_extra/misc/juce_BubbleMessageComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 0EA9280C282850BAB49C1696 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ToolbarItemComponent.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_ToolbarItemComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 0EC1E7F1AE41C81E1EA23B2E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TabbedComponent.h"; path = "../../../../modules/juce_gui_basics/layout/juce_TabbedComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 0F77650615781AFD4374443B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_data_structures.h"; path = "../../../../modules/juce_data_structures/juce_data_structures.h"; sourceTree = "SOURCE_ROOT"; }; + 0FCE8CD83D0FA98563EE2920 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_audio_processors.mm"; path = "../../../../modules/juce_audio_processors/juce_audio_processors.mm"; sourceTree = "SOURCE_ROOT"; }; + 1007D3CD4E3D162CCE176520 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_LocalisedStrings.cpp"; path = "../../../../modules/juce_core/text/juce_LocalisedStrings.cpp"; sourceTree = "SOURCE_ROOT"; }; + 10152F168CB3E2039DF18EA8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ToolbarItemComponent.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_ToolbarItemComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 102DDBEEEAD7EE71450C1EB9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_HashMap.h"; path = "../../../../modules/juce_core/containers/juce_HashMap.h"; sourceTree = "SOURCE_ROOT"; }; + 105A6621F66CC8034DC59C9A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Path.cpp"; path = "../../../../modules/juce_graphics/geometry/juce_Path.cpp"; sourceTree = "SOURCE_ROOT"; }; + 106B20CB3C94A1E72B19A7F7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_SystemStats.cpp"; path = "../../../../modules/juce_core/native/juce_win32_SystemStats.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1089C7A1FF43033FDA63F711 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Rectangle.h"; path = "../../../../modules/juce_graphics/geometry/juce_Rectangle.h"; sourceTree = "SOURCE_ROOT"; }; + 108D97ACAEDE5A8DF0A483B7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GroupComponent.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_GroupComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 10C0D0A587B834EA781EF5D5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ElementComparator.h"; path = "../../../../modules/juce_core/containers/juce_ElementComparator.h"; sourceTree = "SOURCE_ROOT"; }; + 1118BAEA98C38755FEB9E274 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CustomTypeface.h"; path = "../../../../modules/juce_graphics/fonts/juce_CustomTypeface.h"; sourceTree = "SOURCE_ROOT"; }; + 1139AACAD8CE6CD6E9A770B6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_NamedValueSet.h"; path = "../../../../modules/juce_core/containers/juce_NamedValueSet.h"; sourceTree = "SOURCE_ROOT"; }; + 114E68D51824D42B0FFE9651 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_InterprocessConnectionServer.cpp"; path = "../../../../modules/juce_events/interprocess/juce_InterprocessConnectionServer.cpp"; sourceTree = "SOURCE_ROOT"; }; + 11545F94DD1628DE57CB7768 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CaretComponent.h"; path = "../../../../modules/juce_gui_basics/keyboard/juce_CaretComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 119712DC26D0E95E209E85BB = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ResizableWindow.cpp"; path = "../../../../modules/juce_gui_basics/windows/juce_ResizableWindow.cpp"; sourceTree = "SOURCE_ROOT"; }; + 11B4C67851A83C42B8AC00C0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FillType.cpp"; path = "../../../../modules/juce_graphics/colour/juce_FillType.cpp"; sourceTree = "SOURCE_ROOT"; }; + 11E6C0893A679EAD806DA5C2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_CoreAudioFormat.cpp"; path = "../../../../modules/juce_audio_formats/codecs/juce_CoreAudioFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; + 122C499E8D63BC4F91ACC7B6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DrawableImage.h"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawableImage.h"; sourceTree = "SOURCE_ROOT"; }; + 1264CE16C2930583C8AB553D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AiffAudioFormat.cpp"; path = "../../../../modules/juce_audio_formats/codecs/juce_AiffAudioFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; + 129BC61A6A0478DC45B5F8E1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ScopedPointer.h"; path = "../../../../modules/juce_core/memory/juce_ScopedPointer.h"; sourceTree = "SOURCE_ROOT"; }; + 12B4120D10259DF8461D689F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ReadWriteLock.cpp"; path = "../../../../modules/juce_core/threads/juce_ReadWriteLock.cpp"; sourceTree = "SOURCE_ROOT"; }; + 12B479E0CD2AAE105820B20D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DrawableRectangle.cpp"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawableRectangle.cpp"; sourceTree = "SOURCE_ROOT"; }; + 12B9DB1413B7647920B53C07 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioFormatReaderSource.h"; path = "../../../../modules/juce_audio_formats/format/juce_AudioFormatReaderSource.h"; sourceTree = "SOURCE_ROOT"; }; + 12C5FC07F64317F5CF1063A3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_GlowEffect.h"; path = "../../../../modules/juce_graphics/effects/juce_GlowEffect.h"; sourceTree = "SOURCE_ROOT"; }; + 12DD0DF90EEEBCE88873C8B1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RelativeCoordinatePositioner.h"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativeCoordinatePositioner.h"; sourceTree = "SOURCE_ROOT"; }; + 12EE1FB670B7894E873E9A57 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BorderSize.h"; path = "../../../../modules/juce_graphics/geometry/juce_BorderSize.h"; sourceTree = "SOURCE_ROOT"; }; + 1375CAA34ECE0B3B292EEF0E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Justification.h"; path = "../../../../modules/juce_graphics/placement/juce_Justification.h"; sourceTree = "SOURCE_ROOT"; }; + 137FD6DAC3FF840EBABD78E1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_UndoManager.cpp"; path = "../../../../modules/juce_data_structures/undomanager/juce_UndoManager.cpp"; sourceTree = "SOURCE_ROOT"; }; + 13C15669B35168563D72F6F8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioDataConverters.cpp"; path = "../../../../modules/juce_audio_basics/buffers/juce_AudioDataConverters.cpp"; sourceTree = "SOURCE_ROOT"; }; + 14105A8032081F6FC44F7F0B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_SplashScreen.cpp"; path = "../../../../modules/juce_gui_extra/misc/juce_SplashScreen.cpp"; sourceTree = "SOURCE_ROOT"; }; + 147A045E381AE58EC0C54984 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_WebBrowserComponent.mm"; path = "../../../../modules/juce_gui_extra/native/juce_mac_WebBrowserComponent.mm"; sourceTree = "SOURCE_ROOT"; }; + 148C8FE6639F6CDF0E92235D = { isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = Info.plist; path = Info.plist; sourceTree = "SOURCE_ROOT"; }; + 149369775B267A04F9B0ACAE = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_ALSA.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_linux_ALSA.cpp"; sourceTree = "SOURCE_ROOT"; }; + 156E421F5B0D6CAD8D415F53 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DrawableRectangle.h"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawableRectangle.h"; sourceTree = "SOURCE_ROOT"; }; + 1580FF065A04106DBBA8F475 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_QuickTimeMovieComponent.mm"; path = "../../../../modules/juce_video/native/juce_mac_QuickTimeMovieComponent.mm"; sourceTree = "SOURCE_ROOT"; }; + 15B78E8E81D489F2711FDFBE = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_UnitTest.cpp"; path = "../../../../modules/juce_core/unit_tests/juce_UnitTest.cpp"; sourceTree = "SOURCE_ROOT"; }; + 15DD1FC7780F48C6DFF56321 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CodeDocument.h"; path = "../../../../modules/juce_gui_extra/code_editor/juce_CodeDocument.h"; sourceTree = "SOURCE_ROOT"; }; + 16793951B75EADE5C08FD129 = { isa = PBXFileReference; lastKnownFileType = file.icns; name = Icon.icns; path = Icon.icns; sourceTree = "SOURCE_ROOT"; }; + 16A6895439607DD8E651BA87 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ByteOrder.h"; path = "../../../../modules/juce_core/memory/juce_ByteOrder.h"; sourceTree = "SOURCE_ROOT"; }; + 171777847EB6194910E9CFEC = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TableHeaderComponent.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_TableHeaderComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 17422D876DAAF091ED089B8D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OpenGLImage.h"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLImage.h"; sourceTree = "SOURCE_ROOT"; }; + 1798F0BC1F2B2DF2F13193AB = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_SystemStats.cpp"; path = "../../../../modules/juce_core/system/juce_SystemStats.cpp"; sourceTree = "SOURCE_ROOT"; }; + 18666AEC1FCCE5D1514EB1FD = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_KeyListener.cpp"; path = "../../../../modules/juce_gui_basics/keyboard/juce_KeyListener.cpp"; sourceTree = "SOURCE_ROOT"; }; + 18D1181C39F5A59423AC7A3E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Initialisation.h"; path = "../../../../modules/juce_gui_basics/application/juce_Initialisation.h"; sourceTree = "SOURCE_ROOT"; }; + 18E9157D37A11EDBDA35131A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_File.h"; path = "../../../../modules/juce_core/files/juce_File.h"; sourceTree = "SOURCE_ROOT"; }; + 195326647ACE1A61018358BC = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ImageButton.h"; path = "../../../../modules/juce_gui_basics/buttons/juce_ImageButton.h"; sourceTree = "SOURCE_ROOT"; }; + 19789C9C8EDD3CC9F37592C3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Thread.cpp"; path = "../../../../modules/juce_core/threads/juce_Thread.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1A03C9B88919CA79D176E738 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_audio_basics.h"; path = "../../../../modules/juce_audio_basics/juce_audio_basics.h"; sourceTree = "SOURCE_ROOT"; }; + 1A5382EC797EF333806B5AFC = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioFormatManager.cpp"; path = "../../../../modules/juce_audio_formats/format/juce_AudioFormatManager.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1A642D2FFD6CB47C8634337B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ToggleButton.cpp"; path = "../../../../modules/juce_gui_basics/buttons/juce_ToggleButton.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1A9B80E0518B9AA9C34D5804 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileFilter.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileFilter.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1A9EC07147DD48C0D68BF304 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Viewport.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_Viewport.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1B3C2797B04E0FC6699DFDF0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Windowing.cpp"; path = "../../../../modules/juce_gui_basics/native/juce_android_Windowing.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1BDF3CAE40B1FDD559BC3DD3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_InterprocessConnection.h"; path = "../../../../modules/juce_events/interprocess/juce_InterprocessConnection.h"; sourceTree = "SOURCE_ROOT"; }; + 1C36F82D875B81C26A5752AF = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioPluginFormat.cpp"; path = "../../../../modules/juce_audio_processors/format/juce_AudioPluginFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1CCB7B18759F7CEBB065C31E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AppleRemote.h"; path = "../../../../modules/juce_gui_extra/misc/juce_AppleRemote.h"; sourceTree = "SOURCE_ROOT"; }; + 1D0DD674EEEF98B1E1B8D8D8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileListComponent.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileListComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1D3DA514A7B46A2A32A32060 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MidiKeyboardComponent.cpp"; path = "../../../../modules/juce_audio_utils/gui/juce_MidiKeyboardComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1DFE892B4249D1DA3549F13E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MemoryInputStream.h"; path = "../../../../modules/juce_core/streams/juce_MemoryInputStream.h"; sourceTree = "SOURCE_ROOT"; }; + 1E868017015269856168EBA1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_NSViewComponent.h"; path = "../../../../modules/juce_gui_extra/embedding/juce_NSViewComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 1EA77055DF14613DD32065F3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ApplicationProperties.h"; path = "../../../../modules/juce_data_structures/app_properties/juce_ApplicationProperties.h"; sourceTree = "SOURCE_ROOT"; }; + 1EC913A06CFCE35C9AE2AD29 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AudioDemoRecordPage.h; path = ../../Source/demos/AudioDemoRecordPage.h; sourceTree = "SOURCE_ROOT"; }; + 1F7DFE97A858AACDAF9EBB7D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiMessageSequence.h"; path = "../../../../modules/juce_audio_basics/midi/juce_MidiMessageSequence.h"; sourceTree = "SOURCE_ROOT"; }; + 1FC2BD9784C0FCB1D259C006 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_CaretComponent.cpp"; path = "../../../../modules/juce_gui_basics/keyboard/juce_CaretComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 1FD483D22D49AB7C716008DC = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_win32_ComSmartPtr.h"; path = "../../../../modules/juce_core/native/juce_win32_ComSmartPtr.h"; sourceTree = "SOURCE_ROOT"; }; + 200550A2DDDB012E26D6D005 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = AudioDemoRecordPage.cpp; path = ../../Source/demos/AudioDemoRecordPage.cpp; sourceTree = "SOURCE_ROOT"; }; + 20149C04068D071819A7BAFD = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_XmlElement.h"; path = "../../../../modules/juce_core/xml/juce_XmlElement.h"; sourceTree = "SOURCE_ROOT"; }; + 20C67AA68186D267436E7F39 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PlatformDefs.h"; path = "../../../../modules/juce_core/system/juce_PlatformDefs.h"; sourceTree = "SOURCE_ROOT"; }; + 20D1EA31FD53A558EBD278B5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BigInteger.h"; path = "../../../../modules/juce_core/maths/juce_BigInteger.h"; sourceTree = "SOURCE_ROOT"; }; + 20E63E36AE128883F4144BC3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_KeyPressMappingSet.cpp"; path = "../../../../modules/juce_gui_basics/commands/juce_KeyPressMappingSet.cpp"; sourceTree = "SOURCE_ROOT"; }; + 21605BADE3692FBBAE44F961 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiFile.h"; path = "../../../../modules/juce_audio_basics/midi/juce_MidiFile.h"; sourceTree = "SOURCE_ROOT"; }; + 2173828BA5C245AE8C598C6F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_InputStream.cpp"; path = "../../../../modules/juce_core/streams/juce_InputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2184D5F7212394F4BC1C3B45 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_opengl.h"; path = "../../../../modules/juce_opengl/juce_opengl.h"; sourceTree = "SOURCE_ROOT"; }; + 21F1833EDC766935B1CBD2D5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_EdgeTable.cpp"; path = "../../../../modules/juce_graphics/geometry/juce_EdgeTable.cpp"; sourceTree = "SOURCE_ROOT"; }; + 22132E527A92309318A2D572 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ApplicationBase.cpp"; path = "../../../../modules/juce_events/messages/juce_ApplicationBase.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2275EB468CEA505ADE14C225 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = AudioDemoSynthPage.cpp; path = ../../Source/demos/AudioDemoSynthPage.cpp; sourceTree = "SOURCE_ROOT"; }; + 22A86C5C4967A5844323F7BA = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DialogWindow.cpp"; path = "../../../../modules/juce_gui_basics/windows/juce_DialogWindow.cpp"; sourceTree = "SOURCE_ROOT"; }; + 22C2C932398DC1EFE0880A9A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_OpenGLComponent.cpp"; path = "../../../../modules/juce_opengl/native/juce_android_OpenGLComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 22CD1BF5E83A216A0D18260D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MultiTouchMapper.h"; path = "../../../../modules/juce_gui_basics/native/juce_MultiTouchMapper.h"; sourceTree = "SOURCE_ROOT"; }; + 22DA9E57AAA25391C7D1FBC6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_MessageManager.mm"; path = "../../../../modules/juce_events/native/juce_mac_MessageManager.mm"; sourceTree = "SOURCE_ROOT"; }; + 2302DFDF103BE152232EA767 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DynamicObject.h"; path = "../../../../modules/juce_core/containers/juce_DynamicObject.h"; sourceTree = "SOURCE_ROOT"; }; + 23189A59169BC89E95A4A496 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ComponentBoundsConstrainer.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_ComponentBoundsConstrainer.cpp"; sourceTree = "SOURCE_ROOT"; }; + 235894AFDA79AF1644B3A217 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioPluginFormatManager.h"; path = "../../../../modules/juce_audio_processors/format/juce_AudioPluginFormatManager.h"; sourceTree = "SOURCE_ROOT"; }; + 2425625EE014356B5980B238 = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGLES.framework; path = System/Library/Frameworks/OpenGLES.framework; sourceTree = SDKROOT; }; + 247646A6A435A3BDDEA602EE = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_Network.mm"; path = "../../../../modules/juce_core/native/juce_mac_Network.mm"; sourceTree = "SOURCE_ROOT"; }; + 24EF2357DEC8017E6EEC7F93 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ImageCache.h"; path = "../../../../modules/juce_graphics/images/juce_ImageCache.h"; sourceTree = "SOURCE_ROOT"; }; + 24F057BF79A4723C521BBEE4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PropertiesFile.cpp"; path = "../../../../modules/juce_data_structures/app_properties/juce_PropertiesFile.cpp"; sourceTree = "SOURCE_ROOT"; }; + 258AC1AA4F4459F9CF99944D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Value.h"; path = "../../../../modules/juce_data_structures/values/juce_Value.h"; sourceTree = "SOURCE_ROOT"; }; + 2590DCE65DE2323D9EF77214 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OwnedArray.h"; path = "../../../../modules/juce_core/containers/juce_OwnedArray.h"; sourceTree = "SOURCE_ROOT"; }; + 2597ED98D3C16A7EEF1FBFFD = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_osx_ObjCHelpers.h"; path = "../../../../modules/juce_core/native/juce_osx_ObjCHelpers.h"; sourceTree = "SOURCE_ROOT"; }; + 25FECE7ACACB29E1725A6A17 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioFormatReader.cpp"; path = "../../../../modules/juce_audio_formats/format/juce_AudioFormatReader.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2649F70294DB168919CBCAD3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RenderingHelpers.h"; path = "../../../../modules/juce_graphics/native/juce_RenderingHelpers.h"; sourceTree = "SOURCE_ROOT"; }; + 2666A5013948E2EAD29458C1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Expression.cpp"; path = "../../../../modules/juce_core/maths/juce_Expression.cpp"; sourceTree = "SOURCE_ROOT"; }; + 26B73C77D47B146F92BEA265 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DrawableText.h"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawableText.h"; sourceTree = "SOURCE_ROOT"; }; + 2708E4F2F73D88F73D8E54D0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DrawablePath.cpp"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawablePath.cpp"; sourceTree = "SOURCE_ROOT"; }; + 278099898E32942D72AB635A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_audio_utils.mm"; path = "../../../../modules/juce_audio_utils/juce_audio_utils.mm"; sourceTree = "SOURCE_ROOT"; }; + 278FB432DCB9A4F9DBEB64DD = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_core.h"; path = "../../../../modules/juce_core/juce_core.h"; sourceTree = "SOURCE_ROOT"; }; + 27C340103177AB0848BCCC66 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AffineTransform.cpp"; path = "../../../../modules/juce_graphics/geometry/juce_AffineTransform.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2820D74789660269902DB93A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Uuid.cpp"; path = "../../../../modules/juce_core/misc/juce_Uuid.cpp"; sourceTree = "SOURCE_ROOT"; }; + 282C1DA3A161FEF2AD6F94A6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CodeTokeniser.h"; path = "../../../../modules/juce_gui_extra/code_editor/juce_CodeTokeniser.h"; sourceTree = "SOURCE_ROOT"; }; + 2954678FE7AB78F318FBD4F7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileInputStream.h"; path = "../../../../modules/juce_core/files/juce_FileInputStream.h"; sourceTree = "SOURCE_ROOT"; }; + 295A470694011EBCA802822B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OpenGLGraphicsContext.cpp"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLGraphicsContext.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2968B26144E09D6A6659E739 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DirectShowComponent.h"; path = "../../../../modules/juce_video/playback/juce_DirectShowComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 2A835EF38887CAB750B49AC6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RelativePointPath.h"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativePointPath.h"; sourceTree = "SOURCE_ROOT"; }; + 2ACD67859FBC33EB743708CB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TextButton.h"; path = "../../../../modules/juce_gui_basics/buttons/juce_TextButton.h"; sourceTree = "SOURCE_ROOT"; }; + 2AE22D5AB8B2D3C381FBAC81 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_JackAudio.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_linux_JackAudio.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2B3A770317B04AAF24C28EF5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_StretchableLayoutManager.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_StretchableLayoutManager.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2C2B87B06DED242E1C4FE878 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_JPEGLoader.cpp"; path = "../../../../modules/juce_graphics/image_formats/juce_JPEGLoader.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2C3298EC4F4D0DA7A6C4291F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Typeface.cpp"; path = "../../../../modules/juce_graphics/fonts/juce_Typeface.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2C48ED514887D2F673B3B1BC = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AudioDemoLatencyPage.h; path = ../../Source/demos/AudioDemoLatencyPage.h; sourceTree = "SOURCE_ROOT"; }; + 2C516889F34A72150CDB6ADF = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PluginListComponent.cpp"; path = "../../../../modules/juce_audio_processors/scanning/juce_PluginListComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2C610D8010FF4A396101E2DD = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_InputStream.h"; path = "../../../../modules/juce_core/streams/juce_InputStream.h"; sourceTree = "SOURCE_ROOT"; }; + 2C712E1519F7D4410288D35D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AiffAudioFormat.h"; path = "../../../../modules/juce_audio_formats/codecs/juce_AiffAudioFormat.h"; sourceTree = "SOURCE_ROOT"; }; + 2C80ACF1A94F47BA05FA687C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OutputStream.h"; path = "../../../../modules/juce_core/streams/juce_OutputStream.h"; sourceTree = "SOURCE_ROOT"; }; + 2CD9DB6EFEAE8354A089CAC9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_IIRFilter.cpp"; path = "../../../../modules/juce_audio_basics/effects/juce_IIRFilter.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2CE3420FBFD3136621EAFB1D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = MainDemoWindow.cpp; path = ../../Source/MainDemoWindow.cpp; sourceTree = "SOURCE_ROOT"; }; + 2CED94801F5481AE15648BF9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ColourSelector.cpp"; path = "../../../../modules/juce_gui_extra/misc/juce_ColourSelector.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2D529158434D415C56A07479 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TemporaryFile.cpp"; path = "../../../../modules/juce_core/files/juce_TemporaryFile.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2D5379BEA988458161F6694A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_XmlElement.cpp"; path = "../../../../modules/juce_core/xml/juce_XmlElement.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2D585CE2B407C9072D9A22C7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Image.h"; path = "../../../../modules/juce_graphics/images/juce_Image.h"; sourceTree = "SOURCE_ROOT"; }; + 2D6DAE85F0A729F1FF761DC7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PropertyPanel.cpp"; path = "../../../../modules/juce_gui_basics/properties/juce_PropertyPanel.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2D93002DFF33B8BC3AD37520 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MACAddress.h"; path = "../../../../modules/juce_core/network/juce_MACAddress.h"; sourceTree = "SOURCE_ROOT"; }; + 2D9920BFC36E621CBDCE2381 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Primes.cpp"; path = "../../../../modules/juce_cryptography/encryption/juce_Primes.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2DC1A9FFE2FADDF611409D6B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Reverb.h"; path = "../../../../modules/juce_audio_basics/effects/juce_Reverb.h"; sourceTree = "SOURCE_ROOT"; }; + 2E02355C7790F4B6EA0CC56E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_ios_UIViewComponent.mm"; path = "../../../../modules/juce_gui_extra/native/juce_ios_UIViewComponent.mm"; sourceTree = "SOURCE_ROOT"; }; + 2E3C193C1C7AF236B10F01A6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PropertiesFile.h"; path = "../../../../modules/juce_data_structures/app_properties/juce_PropertiesFile.h"; sourceTree = "SOURCE_ROOT"; }; + 2E7A4C5E41B3BEBC444B5935 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ActiveXControlComponent.h"; path = "../../../../modules/juce_gui_extra/embedding/juce_ActiveXControlComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 2F7FE4AA919A66D5EFF65A86 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_LookAndFeel.cpp"; path = "../../../../modules/juce_gui_basics/lookandfeel/juce_LookAndFeel.cpp"; sourceTree = "SOURCE_ROOT"; }; + 2FD23F0C1CE490858228180E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RecentlyOpenedFilesList.cpp"; path = "../../../../modules/juce_gui_extra/misc/juce_RecentlyOpenedFilesList.cpp"; sourceTree = "SOURCE_ROOT"; }; + 30416A5D76A365DDC434987E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ComponentDragger.cpp"; path = "../../../../modules/juce_gui_basics/mouse/juce_ComponentDragger.cpp"; sourceTree = "SOURCE_ROOT"; }; + 3090FB05992F02292F415E33 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DragAndDropContainer.cpp"; path = "../../../../modules/juce_gui_basics/mouse/juce_DragAndDropContainer.cpp"; sourceTree = "SOURCE_ROOT"; }; + 30B5F2ABF28FD59FA7DA26E2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_JSON.cpp"; path = "../../../../modules/juce_core/json/juce_JSON.cpp"; sourceTree = "SOURCE_ROOT"; }; + 30B7393EE0006E9958AD82C3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BlowFish.h"; path = "../../../../modules/juce_cryptography/encryption/juce_BlowFish.h"; sourceTree = "SOURCE_ROOT"; }; + 30F6134D7A127DFE9D1ADA20 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PerformanceCounter.h"; path = "../../../../modules/juce_core/time/juce_PerformanceCounter.h"; sourceTree = "SOURCE_ROOT"; }; + 3121916B396AFD0027FF1926 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_KeyPressMappingSet.h"; path = "../../../../modules/juce_gui_basics/commands/juce_KeyPressMappingSet.h"; sourceTree = "SOURCE_ROOT"; }; + 31C1E172911A4C726A85EA02 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PropertyComponent.h"; path = "../../../../modules/juce_gui_basics/properties/juce_PropertyComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 327D715A8B4C164B34398221 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Sampler.h"; path = "../../../../modules/juce_audio_formats/sampler/juce_Sampler.h"; sourceTree = "SOURCE_ROOT"; }; + 329BD0A0243005D36A444135 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LookAndFeel.h"; path = "../../../../modules/juce_gui_basics/lookandfeel/juce_LookAndFeel.h"; sourceTree = "SOURCE_ROOT"; }; + 32B277F17C4052C6E4C70859 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Value.cpp"; path = "../../../../modules/juce_data_structures/values/juce_Value.cpp"; sourceTree = "SOURCE_ROOT"; }; + 32F08660DB00B6BD5C905FE3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Path.h"; path = "../../../../modules/juce_graphics/geometry/juce_Path.h"; sourceTree = "SOURCE_ROOT"; }; + 32FBF4064072FEB06C6677C2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BufferedInputStream.h"; path = "../../../../modules/juce_core/streams/juce_BufferedInputStream.h"; sourceTree = "SOURCE_ROOT"; }; + 32FF688C9F64E07EA3917682 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_StretchableObjectResizer.h"; path = "../../../../modules/juce_gui_basics/layout/juce_StretchableObjectResizer.h"; sourceTree = "SOURCE_ROOT"; }; + 3342B88619BAEFF4C41078FD = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_SystemTrayIcon.cpp"; path = "../../../../modules/juce_gui_extra/native/juce_win32_SystemTrayIcon.cpp"; sourceTree = "SOURCE_ROOT"; }; + 33A84E7FDD64568649CC89BF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Point.h"; path = "../../../../modules/juce_graphics/geometry/juce_Point.h"; sourceTree = "SOURCE_ROOT"; }; + 33DAC2BB94AFCF8EB33A1417 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_audio_basics.mm"; path = "../../../../modules/juce_audio_basics/juce_audio_basics.mm"; sourceTree = "SOURCE_ROOT"; }; + 33E3113EE5BF74F269FAD5EB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RecentlyOpenedFilesList.h"; path = "../../../../modules/juce_gui_extra/misc/juce_RecentlyOpenedFilesList.h"; sourceTree = "SOURCE_ROOT"; }; + 33F9348D753D148E82519067 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioProcessorPlayer.cpp"; path = "../../../../modules/juce_audio_utils/players/juce_AudioProcessorPlayer.cpp"; sourceTree = "SOURCE_ROOT"; }; + 3421ADCAF375264A71E5AF07 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ComponentPeer.h"; path = "../../../../modules/juce_gui_basics/windows/juce_ComponentPeer.h"; sourceTree = "SOURCE_ROOT"; }; + 3477734262959639DF347D4E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiMessageCollector.h"; path = "../../../../modules/juce_audio_devices/midi_io/juce_MidiMessageCollector.h"; sourceTree = "SOURCE_ROOT"; }; + 348002712045A8515DB393E4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DirectoryContentsList.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_DirectoryContentsList.cpp"; sourceTree = "SOURCE_ROOT"; }; + 34ADBF046976CA8A3932B5EF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_String.h"; path = "../../../../modules/juce_core/text/juce_String.h"; sourceTree = "SOURCE_ROOT"; }; + 34BEABBC39678C06EA3BB307 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PropertyPanel.h"; path = "../../../../modules/juce_gui_basics/properties/juce_PropertyPanel.h"; sourceTree = "SOURCE_ROOT"; }; + 34E9DFB552CA9B8FEF8DEF1D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TableListBox.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_TableListBox.cpp"; sourceTree = "SOURCE_ROOT"; }; + 350624CF3CD7DCA1E0313D3E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioPluginFormat.h"; path = "../../../../modules/juce_audio_processors/format/juce_AudioPluginFormat.h"; sourceTree = "SOURCE_ROOT"; }; + 3507A95E429F11E5549286CB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PopupMenu.h"; path = "../../../../modules/juce_gui_basics/menus/juce_PopupMenu.h"; sourceTree = "SOURCE_ROOT"; }; + 35089DB1D126566F2B5DD724 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DrawablePath.h"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawablePath.h"; sourceTree = "SOURCE_ROOT"; }; + 353DB618823D6BC97E0986C1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Network.cpp"; path = "../../../../modules/juce_core/native/juce_linux_Network.cpp"; sourceTree = "SOURCE_ROOT"; }; + 3543594CCB08E22D1EA8D2C7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TextEditor.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_TextEditor.h"; sourceTree = "SOURCE_ROOT"; }; + 359C09D53EFC4C1C557BC959 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FlacAudioFormat.cpp"; path = "../../../../modules/juce_audio_formats/codecs/juce_FlacAudioFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; + 35CA3E9AEE7BC7C005653A25 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AudioDemoTabComponent.h; path = ../../Source/demos/AudioDemoTabComponent.h; sourceTree = "SOURCE_ROOT"; }; + 35F42453CF2745BD254BC71E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ThreadWithProgressWindow.cpp"; path = "../../../../modules/juce_gui_basics/windows/juce_ThreadWithProgressWindow.cpp"; sourceTree = "SOURCE_ROOT"; }; + 35FF3215D779C44F5B715702 = { isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_events/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + 36DD59799C3C4279B18DEAD3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_CustomTypeface.cpp"; path = "../../../../modules/juce_graphics/fonts/juce_CustomTypeface.cpp"; sourceTree = "SOURCE_ROOT"; }; + 36EFC492079F0B7F4A1CB099 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SliderPropertyComponent.h"; path = "../../../../modules/juce_gui_basics/properties/juce_SliderPropertyComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 3706A97B56FC6BFF72B700DF = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GraphicsContext.cpp"; path = "../../../../modules/juce_graphics/contexts/juce_GraphicsContext.cpp"; sourceTree = "SOURCE_ROOT"; }; + 3710B4143BD286E576B66C15 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioProcessor.h"; path = "../../../../modules/juce_audio_processors/processors/juce_AudioProcessor.h"; sourceTree = "SOURCE_ROOT"; }; + 373EBC4E488B3EF8A0A72CAF = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_GraphicsContext.cpp"; path = "../../../../modules/juce_graphics/native/juce_android_GraphicsContext.cpp"; sourceTree = "SOURCE_ROOT"; }; + 3786A46162305EA0B75F35E8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GZIPCompressorOutputStream.cpp"; path = "../../../../modules/juce_core/zip/juce_GZIPCompressorOutputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; + 37E2F2B9AFE2B6C1AA51A11A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioDeviceManager.cpp"; path = "../../../../modules/juce_audio_devices/audio_io/juce_AudioDeviceManager.cpp"; sourceTree = "SOURCE_ROOT"; }; + 38022D22AE783472BA32DF82 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioThumbnail.h"; path = "../../../../modules/juce_audio_utils/gui/juce_AudioThumbnail.h"; sourceTree = "SOURCE_ROOT"; }; + 3817585001205632BF471A05 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiInput.h"; path = "../../../../modules/juce_audio_devices/midi_io/juce_MidiInput.h"; sourceTree = "SOURCE_ROOT"; }; + 3839556028D5A749F48340FE = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ToolbarItemPalette.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_ToolbarItemPalette.cpp"; sourceTree = "SOURCE_ROOT"; }; + 385368D4C7693E8903E0C345 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LowLevelGraphicsSoftwareRenderer.h"; path = "../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsSoftwareRenderer.h"; sourceTree = "SOURCE_ROOT"; }; + 38B68694E6EDD6C29D1198D7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AudioDemoSetupPage.h; path = ../../Source/demos/AudioDemoSetupPage.h; sourceTree = "SOURCE_ROOT"; }; + 38CDDFDC6697BF7BCFC8DAFC = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioFormatWriter.cpp"; path = "../../../../modules/juce_audio_formats/format/juce_AudioFormatWriter.cpp"; sourceTree = "SOURCE_ROOT"; }; + 38E0255E6BB9600DEECD39F8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RectangleList.h"; path = "../../../../modules/juce_graphics/geometry/juce_RectangleList.h"; sourceTree = "SOURCE_ROOT"; }; + 393CDFCFA0358C689E5A3691 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Logger.h"; path = "../../../../modules/juce_core/logging/juce_Logger.h"; sourceTree = "SOURCE_ROOT"; }; + 39DADA0AAD7468C535ECD5A2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AttributedString.cpp"; path = "../../../../modules/juce_graphics/fonts/juce_AttributedString.cpp"; sourceTree = "SOURCE_ROOT"; }; + 39ED2CD3C8A17DF313A0838B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_XmlDocument.h"; path = "../../../../modules/juce_core/xml/juce_XmlDocument.h"; sourceTree = "SOURCE_ROOT"; }; + 3A3C8D765CD02651E2C39102 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MidiKeyboardState.cpp"; path = "../../../../modules/juce_audio_basics/midi/juce_MidiKeyboardState.cpp"; sourceTree = "SOURCE_ROOT"; }; + 3A7C2EA6B6C8E00BBE6A29B1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AttributedString.h"; path = "../../../../modules/juce_graphics/fonts/juce_AttributedString.h"; sourceTree = "SOURCE_ROOT"; }; + 3A9AB41831037CF68FF5719F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ComboBox.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_ComboBox.cpp"; sourceTree = "SOURCE_ROOT"; }; + 3ADBF520293DBBCE5A605902 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DropShadower.h"; path = "../../../../modules/juce_gui_basics/misc/juce_DropShadower.h"; sourceTree = "SOURCE_ROOT"; }; + 3AEC36869846977B0C09A881 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CharPointer_ASCII.h"; path = "../../../../modules/juce_core/text/juce_CharPointer_ASCII.h"; sourceTree = "SOURCE_ROOT"; }; + 3B32FA1EF99322D3DED5F162 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_GroupComponent.h"; path = "../../../../modules/juce_gui_basics/layout/juce_GroupComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 3B583D35FAD0DE89F00F17C0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Application.h"; path = "../../../../modules/juce_gui_basics/application/juce_Application.h"; sourceTree = "SOURCE_ROOT"; }; + 3C35334FE9451182FE7EC2B8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = DirectShowDemo.cpp; path = ../../Source/demos/DirectShowDemo.cpp; sourceTree = "SOURCE_ROOT"; }; + 3C97F910F4E20FC15DB607F0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_InputSource.h"; path = "../../../../modules/juce_core/streams/juce_InputSource.h"; sourceTree = "SOURCE_ROOT"; }; + 3CF7FB16E7DFE7EC2636A45D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PopupMenu.cpp"; path = "../../../../modules/juce_gui_basics/menus/juce_PopupMenu.cpp"; sourceTree = "SOURCE_ROOT"; }; + 3CFD018C7CC9E7B8E1E6232D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_WebBrowserComponent.cpp"; path = "../../../../modules/juce_gui_extra/native/juce_linux_WebBrowserComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 3CFE82D0B21D705C8C6DFCF9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PropertySet.h"; path = "../../../../modules/juce_core/containers/juce_PropertySet.h"; sourceTree = "SOURCE_ROOT"; }; + 3D01072645251F386FCE636B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PathIterator.h"; path = "../../../../modules/juce_graphics/geometry/juce_PathIterator.h"; sourceTree = "SOURCE_ROOT"; }; + 3D11CF883EC31F74D97920D3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = DragAndDropDemo.cpp; path = ../../Source/demos/DragAndDropDemo.cpp; sourceTree = "SOURCE_ROOT"; }; + 3D47500F131A273A8C29AAE2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MidiMessageCollector.cpp"; path = "../../../../modules/juce_audio_devices/midi_io/juce_MidiMessageCollector.cpp"; sourceTree = "SOURCE_ROOT"; }; + 3D5DB29BE2D59A93B5516273 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_WebBrowserComponent.cpp"; path = "../../../../modules/juce_gui_extra/native/juce_android_WebBrowserComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 3D8ED4E2F2DFEBA891A4BD7B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Windowing.cpp"; path = "../../../../modules/juce_gui_basics/native/juce_linux_Windowing.cpp"; sourceTree = "SOURCE_ROOT"; }; + 3D9E23A71CF1E3FB6D532753 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_SubregionStream.cpp"; path = "../../../../modules/juce_core/streams/juce_SubregionStream.cpp"; sourceTree = "SOURCE_ROOT"; }; + 3DF6629A4DD77B71A5F855CC = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MP3AudioFormat.cpp"; path = "../../../../modules/juce_audio_formats/codecs/juce_MP3AudioFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; + 3E11497CB4E6589C8A10E740 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_FileChooser.cpp"; path = "../../../../modules/juce_gui_basics/native/juce_win32_FileChooser.cpp"; sourceTree = "SOURCE_ROOT"; }; + 3E49B797A7DF7B2F596F330B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_UnitTest.h"; path = "../../../../modules/juce_core/unit_tests/juce_UnitTest.h"; sourceTree = "SOURCE_ROOT"; }; + 3E51C5F35FB095AF4F0E373F = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreText.framework; path = System/Library/Frameworks/CoreText.framework; sourceTree = SDKROOT; }; + 3EBBCD2A01201C7CC76389CC = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MidiBuffer.cpp"; path = "../../../../modules/juce_audio_basics/midi/juce_MidiBuffer.cpp"; sourceTree = "SOURCE_ROOT"; }; + 3EE0B72A06759B14B7FC6836 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DropShadowEffect.h"; path = "../../../../modules/juce_graphics/effects/juce_DropShadowEffect.h"; sourceTree = "SOURCE_ROOT"; }; + 3F273BE94572DB6E747B0793 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_events.h"; path = "../../../../modules/juce_events/juce_events.h"; sourceTree = "SOURCE_ROOT"; }; + 3F4889BE2D946E79745601A6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LADSPAPluginFormat.h"; path = "../../../../modules/juce_audio_processors/format_types/juce_LADSPAPluginFormat.h"; sourceTree = "SOURCE_ROOT"; }; + 3FA49B24986D1DA7CFA612ED = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ProgressBar.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_ProgressBar.cpp"; sourceTree = "SOURCE_ROOT"; }; + 3FCF8E2901F23E806122E4AA = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ApplicationCommandID.h"; path = "../../../../modules/juce_gui_basics/commands/juce_ApplicationCommandID.h"; sourceTree = "SOURCE_ROOT"; }; + 3FFA55DA900886D84F5A0A7A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioSource.h"; path = "../../../../modules/juce_audio_basics/sources/juce_AudioSource.h"; sourceTree = "SOURCE_ROOT"; }; + 405F91E957609744EB0FC5C8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_audio_formats.h"; path = "../../../../modules/juce_audio_formats/juce_audio_formats.h"; sourceTree = "SOURCE_ROOT"; }; + 419A5345B4F9B977B7C1FD2E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ZipFile.cpp"; path = "../../../../modules/juce_core/zip/juce_ZipFile.cpp"; sourceTree = "SOURCE_ROOT"; }; + 422D4D8EE3470F57D56064AA = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ComponentMovementWatcher.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_ComponentMovementWatcher.cpp"; sourceTree = "SOURCE_ROOT"; }; + 4242718AFF89762AA5CEC247 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DragAndDropTarget.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_DragAndDropTarget.h"; sourceTree = "SOURCE_ROOT"; }; + 4275F414173638509F56E09A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_QuickTimeAudioFormat.h"; path = "../../../../modules/juce_audio_formats/codecs/juce_QuickTimeAudioFormat.h"; sourceTree = "SOURCE_ROOT"; }; + 42B89D48E9FB252F1BC3796A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = JuceHeader.h; path = ../../JuceLibraryCode/JuceHeader.h; sourceTree = "SOURCE_ROOT"; }; + 4306A3B2696CCE1D811D8C53 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FlacAudioFormat.h"; path = "../../../../modules/juce_audio_formats/codecs/juce_FlacAudioFormat.h"; sourceTree = "SOURCE_ROOT"; }; + 431B8B4CCA364880B507DD4E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_SVGParser.cpp"; path = "../../../../modules/juce_gui_basics/drawables/juce_SVGParser.cpp"; sourceTree = "SOURCE_ROOT"; }; + 43A4661DD876DBD6A6E1F5C7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ApplicationCommandManager.cpp"; path = "../../../../modules/juce_gui_basics/commands/juce_ApplicationCommandManager.cpp"; sourceTree = "SOURCE_ROOT"; }; + 43D8FB16F1DE9F159C7A2F71 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ArrowButton.cpp"; path = "../../../../modules/juce_gui_basics/buttons/juce_ArrowButton.cpp"; sourceTree = "SOURCE_ROOT"; }; + 43E4604C39E9A992216F6B98 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OpenGLFrameBuffer.h"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLFrameBuffer.h"; sourceTree = "SOURCE_ROOT"; }; + 441F40BFFD11D433F2FED531 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CodeEditorComponent.h"; path = "../../../../modules/juce_gui_extra/code_editor/juce_CodeEditorComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 44616895C0F4219D47AC7FEB = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MidiFile.cpp"; path = "../../../../modules/juce_audio_basics/midi/juce_MidiFile.cpp"; sourceTree = "SOURCE_ROOT"; }; + 447E2F5BA5478E8233CE1A1B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiDataConcatenator.h"; path = "../../../../modules/juce_audio_devices/native/juce_MidiDataConcatenator.h"; sourceTree = "SOURCE_ROOT"; }; + 450F0C2A16431DBBAE50520E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_WindowsMediaAudioFormat.cpp"; path = "../../../../modules/juce_audio_formats/codecs/juce_WindowsMediaAudioFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; + 451D484BE77922E33CA60DFE = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_KnownPluginList.h"; path = "../../../../modules/juce_audio_processors/scanning/juce_KnownPluginList.h"; sourceTree = "SOURCE_ROOT"; }; + 4604F166A3FC6187967E2053 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Messaging.cpp"; path = "../../../../modules/juce_events/native/juce_linux_Messaging.cpp"; sourceTree = "SOURCE_ROOT"; }; + 462F0D225347C4FDB943324C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ChoicePropertyComponent.h"; path = "../../../../modules/juce_gui_basics/properties/juce_ChoicePropertyComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 467EAE3A087BEF2C56EE3FF7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DragAndDropContainer.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_DragAndDropContainer.h"; sourceTree = "SOURCE_ROOT"; }; + 476F1E00A832948D22B468C1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SystemTrayIconComponent.h"; path = "../../../../modules/juce_gui_extra/misc/juce_SystemTrayIconComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 47B161CB864B6C499DE64416 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_NamedValueSet.cpp"; path = "../../../../modules/juce_core/containers/juce_NamedValueSet.cpp"; sourceTree = "SOURCE_ROOT"; }; + 47BD3D6D5AC81F74179942FA = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DrawableComposite.h"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawableComposite.h"; sourceTree = "SOURCE_ROOT"; }; + 47C2B600A45FAC095669304F = { isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_video/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + 47DAE660790C8E8CE96A63FB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_GZIPDecompressorInputStream.h"; path = "../../../../modules/juce_core/zip/juce_GZIPDecompressorInputStream.h"; sourceTree = "SOURCE_ROOT"; }; + 47F1E35082ED332567F9C727 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioDeviceSelectorComponent.h"; path = "../../../../modules/juce_audio_utils/gui/juce_AudioDeviceSelectorComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 4871179A9D7239EDE34B33BE = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_MainMenu.mm"; path = "../../../../modules/juce_gui_basics/native/juce_mac_MainMenu.mm"; sourceTree = "SOURCE_ROOT"; }; + 48DCD395FA50217F557ECC2A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OptionalScopedPointer.h"; path = "../../../../modules/juce_core/memory/juce_OptionalScopedPointer.h"; sourceTree = "SOURCE_ROOT"; }; + 4916E6E942FDEA8E55DEEF64 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucedemo_headers.h"; path = "../../Source/jucedemo_headers.h"; sourceTree = "SOURCE_ROOT"; }; + 49AD4268C6B2CF4E12806E56 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_CameraDevice.cpp"; path = "../../../../modules/juce_video/native/juce_android_CameraDevice.cpp"; sourceTree = "SOURCE_ROOT"; }; + 49C7D1146BE928E7FEF48A72 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_NewLine.h"; path = "../../../../modules/juce_core/text/juce_NewLine.h"; sourceTree = "SOURCE_ROOT"; }; + 49DA3670A8CF79F133914D18 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_video.mm"; path = "../../../../modules/juce_video/juce_video.mm"; sourceTree = "SOURCE_ROOT"; }; + 49FED6A86A4F78CDB60CBC99 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ButtonPropertyComponent.h"; path = "../../../../modules/juce_gui_basics/properties/juce_ButtonPropertyComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 4A9E5DAE13069017FB5CAEB2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioCDReader.h"; path = "../../../../modules/juce_audio_devices/audio_cd/juce_AudioCDReader.h"; sourceTree = "SOURCE_ROOT"; }; + 4AC80644D0D73A0FF8656CAB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CharPointer_UTF32.h"; path = "../../../../modules/juce_core/text/juce_CharPointer_UTF32.h"; sourceTree = "SOURCE_ROOT"; }; + 4ADF2B4274758FA3F435D6DB = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_DirectShowComponent.cpp"; path = "../../../../modules/juce_video/native/juce_win32_DirectShowComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 4AF29A63EBF9E0693BF999C4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Singleton.h"; path = "../../../../modules/juce_core/memory/juce_Singleton.h"; sourceTree = "SOURCE_ROOT"; }; + 4B86077AAC3D6C026B3E31CE = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioFormat.h"; path = "../../../../modules/juce_audio_formats/format/juce_AudioFormat.h"; sourceTree = "SOURCE_ROOT"; }; + 4CC2034DFB9E19F81E590E6E = { isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_audio_devices/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + 4CE1249813E63913B15BB51E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_gui_basics.mm"; path = "../../../../modules/juce_gui_basics/juce_gui_basics.mm"; sourceTree = "SOURCE_ROOT"; }; + 4CE8628F7CAB483AFAFA01FD = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_BooleanPropertyComponent.cpp"; path = "../../../../modules/juce_gui_basics/properties/juce_BooleanPropertyComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 4CFB262AA9778621B8B33A7D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OpenGLTexture.h"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLTexture.h"; sourceTree = "SOURCE_ROOT"; }; + 4D050E552CC0A82297D0AC86 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Button.cpp"; path = "../../../../modules/juce_gui_basics/buttons/juce_Button.cpp"; sourceTree = "SOURCE_ROOT"; }; + 4D2697EB7DF6121A0037A399 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_UndoableAction.h"; path = "../../../../modules/juce_data_structures/undomanager/juce_UndoableAction.h"; sourceTree = "SOURCE_ROOT"; }; + 4DCA9EF26A5F2CCF0B74F8A1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_ASIO.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_win32_ASIO.cpp"; sourceTree = "SOURCE_ROOT"; }; + 4DE313B7586BAFF5E9BB0506 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TopLevelWindow.cpp"; path = "../../../../modules/juce_gui_basics/windows/juce_TopLevelWindow.cpp"; sourceTree = "SOURCE_ROOT"; }; + 4E0A38A8008E55C09BFBA199 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = BinaryData.h; path = ../../JuceLibraryCode/BinaryData.h; sourceTree = "SOURCE_ROOT"; }; + 4E6F438BDC119B89C9518531 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_posix_NamedPipe.cpp"; path = "../../../../modules/juce_core/native/juce_posix_NamedPipe.cpp"; sourceTree = "SOURCE_ROOT"; }; + 4E8A36ACA8A867C7511B280A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TreeView.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_TreeView.cpp"; sourceTree = "SOURCE_ROOT"; }; + 4EB06BB3A534C3865CD7A8B8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AppConfig.h; path = ../../JuceLibraryCode/AppConfig.h; sourceTree = "SOURCE_ROOT"; }; + 4EB13D757A756408053DBB79 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_String.cpp"; path = "../../../../modules/juce_core/text/juce_String.cpp"; sourceTree = "SOURCE_ROOT"; }; + 4EC68506861032FFD4B848DB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TemporaryFile.h"; path = "../../../../modules/juce_core/files/juce_TemporaryFile.h"; sourceTree = "SOURCE_ROOT"; }; + 4EC77B02BE7457DE877E332B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ComponentAnimator.h"; path = "../../../../modules/juce_gui_basics/layout/juce_ComponentAnimator.h"; sourceTree = "SOURCE_ROOT"; }; + 4F2F636FB9416BFBB1FF2473 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Fonts.cpp"; path = "../../../../modules/juce_graphics/native/juce_android_Fonts.cpp"; sourceTree = "SOURCE_ROOT"; }; + 4F802BD98072EA49F7F4FE4A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OpenGLComponent.cpp"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 4F854124B48F6358A992D164 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ListBox.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_ListBox.h"; sourceTree = "SOURCE_ROOT"; }; + 4FC0DDA3086EE26242655E66 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_cryptography.mm"; path = "../../../../modules/juce_cryptography/juce_cryptography.mm"; sourceTree = "SOURCE_ROOT"; }; + 5010D82E6ED57F014D8E88E3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileTreeComponent.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileTreeComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 5031A666D462F64BF254F81C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiMessage.h"; path = "../../../../modules/juce_audio_basics/midi/juce_MidiMessage.h"; sourceTree = "SOURCE_ROOT"; }; + 503F07193B665711417DF1FC = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Drawable.h"; path = "../../../../modules/juce_gui_basics/drawables/juce_Drawable.h"; sourceTree = "SOURCE_ROOT"; }; + 508E1F2760E66BD1A73C235E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_GraphicsContext.h"; path = "../../../../modules/juce_graphics/contexts/juce_GraphicsContext.h"; sourceTree = "SOURCE_ROOT"; }; + 5092F31788400A172E319CCB = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_CodeDocument.cpp"; path = "../../../../modules/juce_gui_extra/code_editor/juce_CodeDocument.cpp"; sourceTree = "SOURCE_ROOT"; }; + 50A201CF006DD19F648C429D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MarkerList.h"; path = "../../../../modules/juce_gui_basics/positioning/juce_MarkerList.h"; sourceTree = "SOURCE_ROOT"; }; + 51A580427D01D51811D5F1D0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ChildProcess.h"; path = "../../../../modules/juce_core/threads/juce_ChildProcess.h"; sourceTree = "SOURCE_ROOT"; }; + 51AFA9AA1B3094239580A0B6 = { isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_data_structures/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + 52CAE85DCE0FA2692B8A85C7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MessageListener.cpp"; path = "../../../../modules/juce_events/messages/juce_MessageListener.cpp"; sourceTree = "SOURCE_ROOT"; }; + 52D9F5FD82C858FE4F134773 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Windowing.cpp"; path = "../../../../modules/juce_gui_basics/native/juce_win32_Windowing.cpp"; sourceTree = "SOURCE_ROOT"; }; + 52FD39B0A762C353D2FB09BC = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MenuBarModel.cpp"; path = "../../../../modules/juce_gui_basics/menus/juce_MenuBarModel.cpp"; sourceTree = "SOURCE_ROOT"; }; + 53A5227FBB8C0DD8F4442599 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RelativePointPath.cpp"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativePointPath.cpp"; sourceTree = "SOURCE_ROOT"; }; + 53B187F6CFBDE72F4CEFE845 = { isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_opengl/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + 5435804E495A87442FD7A6F0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ComponentPeer.cpp"; path = "../../../../modules/juce_gui_basics/windows/juce_ComponentPeer.cpp"; sourceTree = "SOURCE_ROOT"; }; + 549BE844954C5CD52D46FBD1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Uuid.h"; path = "../../../../modules/juce_core/misc/juce_Uuid.h"; sourceTree = "SOURCE_ROOT"; }; + 54B6F856BA80756C0C139326 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_AudioCDReader.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_win32_AudioCDReader.cpp"; sourceTree = "SOURCE_ROOT"; }; + 554399057C06249E6FAB9E20 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RelativeTime.cpp"; path = "../../../../modules/juce_core/time/juce_RelativeTime.cpp"; sourceTree = "SOURCE_ROOT"; }; + 55DDAA81843B00449145EA5A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MessageManager.cpp"; path = "../../../../modules/juce_events/messages/juce_MessageManager.cpp"; sourceTree = "SOURCE_ROOT"; }; + 56CA808B4610A5C34730B4D2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MessageListener.h"; path = "../../../../modules/juce_events/messages/juce_MessageListener.h"; sourceTree = "SOURCE_ROOT"; }; + 56D3242C281C2F19A2A6E81B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MenuBarComponent.cpp"; path = "../../../../modules/juce_gui_basics/menus/juce_MenuBarComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 570C04EF3724ADC8B2EF0563 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Midi.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_android_Midi.cpp"; sourceTree = "SOURCE_ROOT"; }; + 5712EB90A8B51DBBC4E19A39 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Direct2DGraphicsContext.cpp"; path = "../../../../modules/juce_graphics/native/juce_win32_Direct2DGraphicsContext.cpp"; sourceTree = "SOURCE_ROOT"; }; + 5725CB557A7D55CA59E18324 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DirectoryContentsDisplayComponent.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_DirectoryContentsDisplayComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 5741A7FD2C785C3F65377A45 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_AudioCDReader.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_linux_AudioCDReader.cpp"; sourceTree = "SOURCE_ROOT"; }; + 574BCE46C31D810F694B0651 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileChooserDialogBox.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileChooserDialogBox.cpp"; sourceTree = "SOURCE_ROOT"; }; + 575587359A2F65312CE97AC4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_graphics.mm"; path = "../../../../modules/juce_graphics/juce_graphics.mm"; sourceTree = "SOURCE_ROOT"; }; + 5786364EC4C531CDE41BDCEA = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OpenGLContext.cpp"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLContext.cpp"; sourceTree = "SOURCE_ROOT"; }; + 579D22DA6ECC930E19B7104A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = BinaryData.cpp; path = ../../JuceLibraryCode/BinaryData.cpp; sourceTree = "SOURCE_ROOT"; }; + 58061ADC1867C814A334D49D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileInputStream.cpp"; path = "../../../../modules/juce_core/files/juce_FileInputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; + 58864C3D7F369EBE01E42C5C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OpenGLShaderProgram.cpp"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLShaderProgram.cpp"; sourceTree = "SOURCE_ROOT"; }; + 591E3F5832C08B0841971B01 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PropertyComponent.cpp"; path = "../../../../modules/juce_gui_basics/properties/juce_PropertyComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 59591325C73706DB6BD2C887 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FilePreviewComponent.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FilePreviewComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 5996F037CD5993251871573E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DrawableShape.cpp"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawableShape.cpp"; sourceTree = "SOURCE_ROOT"; }; + 59A4C185020F908DEB4A844C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_File.cpp"; path = "../../../../modules/juce_core/files/juce_File.cpp"; sourceTree = "SOURCE_ROOT"; }; + 59F616BB319A05A8E93B89FD = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AsyncUpdater.h"; path = "../../../../modules/juce_events/broadcasters/juce_AsyncUpdater.h"; sourceTree = "SOURCE_ROOT"; }; + 5ACCDDBA02C73CE15D6532E9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_Windowing.mm"; path = "../../../../modules/juce_gui_basics/native/juce_mac_Windowing.mm"; sourceTree = "SOURCE_ROOT"; }; + 5AE8CCF926E311A0A7088E5B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioProcessorListener.h"; path = "../../../../modules/juce_audio_processors/processors/juce_AudioProcessorListener.h"; sourceTree = "SOURCE_ROOT"; }; + 5BC78223CF42F85D660DA536 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_URL.cpp"; path = "../../../../modules/juce_core/network/juce_URL.cpp"; sourceTree = "SOURCE_ROOT"; }; + 5CABE190EBD0F4EEB763114A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Fonts.cpp"; path = "../../../../modules/juce_graphics/native/juce_win32_Fonts.cpp"; sourceTree = "SOURCE_ROOT"; }; + 5CE14F63495533AEDBD1688B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Slider.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_Slider.cpp"; sourceTree = "SOURCE_ROOT"; }; + 5CE4B86B0FCE258A8A12AB09 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ToolbarItemPalette.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_ToolbarItemPalette.h"; sourceTree = "SOURCE_ROOT"; }; + 5D312C2C94366F88C7A7A708 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SparseSet.h"; path = "../../../../modules/juce_core/containers/juce_SparseSet.h"; sourceTree = "SOURCE_ROOT"; }; + 5D7DE60BB4DF4CE300B4F343 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ApplicationCommandInfo.h"; path = "../../../../modules/juce_gui_basics/commands/juce_ApplicationCommandInfo.h"; sourceTree = "SOURCE_ROOT"; }; + 5DBE1359F502F9C72E38800B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_VSTPluginFormat.cpp"; path = "../../../../modules/juce_audio_processors/format_types/juce_VSTPluginFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; + 5E12C726C5DBB9C81963FAB5 = { isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_gui_extra/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + 5ED8A827D78184F2E01A5511 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = TableDemo.cpp; path = ../../Source/demos/TableDemo.cpp; sourceTree = "SOURCE_ROOT"; }; + 5EFF3A95523D36B3F1A057C1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PluginDescription.cpp"; path = "../../../../modules/juce_audio_processors/processors/juce_PluginDescription.cpp"; sourceTree = "SOURCE_ROOT"; }; + 60704E9013507A9F9729017D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ImageComponent.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_ImageComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 607083E28D3CAAC3C69D3010 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_QuickTimeMovieComponent.h"; path = "../../../../modules/juce_video/playback/juce_QuickTimeMovieComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 608BEDD96B33E0475FF1FD54 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_URL.h"; path = "../../../../modules/juce_core/network/juce_URL.h"; sourceTree = "SOURCE_ROOT"; }; + 614AE257736D79B36015DBC4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiKeyboardState.h"; path = "../../../../modules/juce_audio_basics/midi/juce_MidiKeyboardState.h"; sourceTree = "SOURCE_ROOT"; }; + 6181080398CF1388C5C15051 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_BlowFish.cpp"; path = "../../../../modules/juce_cryptography/encryption/juce_BlowFish.cpp"; sourceTree = "SOURCE_ROOT"; }; + 618F07B344089C7B13EED411 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CPlusPlusCodeTokeniser.h"; path = "../../../../modules/juce_gui_extra/code_editor/juce_CPlusPlusCodeTokeniser.h"; sourceTree = "SOURCE_ROOT"; }; + 61941C6E24D2D04F51F59134 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BubbleMessageComponent.h"; path = "../../../../modules/juce_gui_extra/misc/juce_BubbleMessageComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 61B4084F81D01C8730F5952F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MouseEvent.cpp"; path = "../../../../modules/juce_gui_basics/mouse/juce_MouseEvent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 61C6FB83D4582BF2F84EB464 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ComponentBuilder.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_ComponentBuilder.cpp"; sourceTree = "SOURCE_ROOT"; }; + 61D55BA26F1410A26A007514 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_mac_CoreGraphicsContext.h"; path = "../../../../modules/juce_graphics/native/juce_mac_CoreGraphicsContext.h"; sourceTree = "SOURCE_ROOT"; }; + 61E83A490FBB38A8D7613146 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_SystemTrayIconComponent.cpp"; path = "../../../../modules/juce_gui_extra/misc/juce_SystemTrayIconComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 62AAFFC7E5754AA715DCB1E5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TargetPlatform.h"; path = "../../../../modules/juce_core/system/juce_TargetPlatform.h"; sourceTree = "SOURCE_ROOT"; }; + 62AFEF7525003814092C79FA = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_DragAndDrop.cpp"; path = "../../../../modules/juce_gui_basics/native/juce_win32_DragAndDrop.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6314AFE1A17F085C028B4C82 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Desktop.cpp"; path = "../../../../modules/juce_gui_basics/components/juce_Desktop.cpp"; sourceTree = "SOURCE_ROOT"; }; + 63A3A467F124B67D19587D4F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_SliderPropertyComponent.cpp"; path = "../../../../modules/juce_gui_basics/properties/juce_SliderPropertyComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 63CF475000C8419AE8D25BD2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RelativePoint.h"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativePoint.h"; sourceTree = "SOURCE_ROOT"; }; + 63DD8F6DD0DDC9A6F45E0C90 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_NativeMessageBox.h"; path = "../../../../modules/juce_gui_basics/windows/juce_NativeMessageBox.h"; sourceTree = "SOURCE_ROOT"; }; + 6413A99AB17F3551937E397F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiBuffer.h"; path = "../../../../modules/juce_audio_basics/midi/juce_MidiBuffer.h"; sourceTree = "SOURCE_ROOT"; }; + 641BCC559554D3C4B51A5B92 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_mac_ObjCSuffix.h"; path = "../../../../modules/juce_core/native/juce_mac_ObjCSuffix.h"; sourceTree = "SOURCE_ROOT"; }; + 64485EF2AE378418411A8FCB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioFormatReader.h"; path = "../../../../modules/juce_audio_formats/format/juce_AudioFormatReader.h"; sourceTree = "SOURCE_ROOT"; }; + 65A50CC38E2A045D320D4224 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_StretchableObjectResizer.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_StretchableObjectResizer.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6627248BD1D82CBA820F1FCF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MessageManager.h"; path = "../../../../modules/juce_events/messages/juce_MessageManager.h"; sourceTree = "SOURCE_ROOT"; }; + 664211B1C9D22E34B60EF5E6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ImageFileFormat.cpp"; path = "../../../../modules/juce_graphics/images/juce_ImageFileFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; + 66425E2428080B75F0FFB2C4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MenuBarComponent.h"; path = "../../../../modules/juce_gui_basics/menus/juce_MenuBarComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 6649385F220EB0B654AB61FB = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = WidgetsDemo.cpp; path = ../../Source/demos/WidgetsDemo.cpp; sourceTree = "SOURCE_ROOT"; }; + 669FD4C70B8BF2B87DEAFB73 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioDataConverters.h"; path = "../../../../modules/juce_audio_basics/buffers/juce_AudioDataConverters.h"; sourceTree = "SOURCE_ROOT"; }; + 66E3497A9DCF883BCE6A27A8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileBrowserComponent.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileBrowserComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 66F2929C04B6E230FFA975C8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MidiMessage.cpp"; path = "../../../../modules/juce_audio_basics/midi/juce_MidiMessage.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6704DC3810D991DADFF947AC = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_DirectWriteTypeface.cpp"; path = "../../../../modules/juce_graphics/native/juce_win32_DirectWriteTypeface.cpp"; sourceTree = "SOURCE_ROOT"; }; + 678034FB9D177C3D08044AB9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ValueTree.cpp"; path = "../../../../modules/juce_data_structures/values/juce_ValueTree.cpp"; sourceTree = "SOURCE_ROOT"; }; + 67B45F46192481A24287B06C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioPluginInstance.h"; path = "../../../../modules/juce_audio_processors/processors/juce_AudioPluginInstance.h"; sourceTree = "SOURCE_ROOT"; }; + 67DA4E3A02A5697DE923E0C5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MixerAudioSource.cpp"; path = "../../../../modules/juce_audio_basics/sources/juce_MixerAudioSource.cpp"; sourceTree = "SOURCE_ROOT"; }; + 67F14D1D1869540E4B9540B5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ToolbarButton.h"; path = "../../../../modules/juce_gui_basics/buttons/juce_ToolbarButton.h"; sourceTree = "SOURCE_ROOT"; }; + 687E1D120E47EEFEEB73A4BF = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DrawableText.cpp"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawableText.cpp"; sourceTree = "SOURCE_ROOT"; }; + 690BE5039AADEF787D6E13D9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = AudioDemoTabComponent.cpp; path = ../../Source/demos/AudioDemoTabComponent.cpp; sourceTree = "SOURCE_ROOT"; }; + 6A4819E134CD45BD043C3219 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Socket.cpp"; path = "../../../../modules/juce_core/network/juce_Socket.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6B03CB11D5DEABAEE7F9E0F1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GIFLoader.cpp"; path = "../../../../modules/juce_graphics/image_formats/juce_GIFLoader.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6B0F3AF3FE7B113C33112897 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MultiDocumentPanel.h"; path = "../../../../modules/juce_gui_basics/layout/juce_MultiDocumentPanel.h"; sourceTree = "SOURCE_ROOT"; }; + 6BBB8746C2C1BB5F3C3F1FC2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_ios_UIViewComponentPeer.mm"; path = "../../../../modules/juce_gui_basics/native/juce_ios_UIViewComponentPeer.mm"; sourceTree = "SOURCE_ROOT"; }; + 6BBE4F2809E2AE0FE445302C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ImageCache.cpp"; path = "../../../../modules/juce_graphics/images/juce_ImageCache.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6BD99638187A39ABC44DCBA0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ThreadLocalValue.h"; path = "../../../../modules/juce_core/threads/juce_ThreadLocalValue.h"; sourceTree = "SOURCE_ROOT"; }; + 6C608B44E265F761D09C91CB = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Fonts.cpp"; path = "../../../../modules/juce_graphics/native/juce_linux_Fonts.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6C956B90C1BB1217BF02F0D0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ScopedValueSetter.h"; path = "../../../../modules/juce_core/containers/juce_ScopedValueSetter.h"; sourceTree = "SOURCE_ROOT"; }; + 6CC2241F234EDD873FD5BDC7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_WildcardFileFilter.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_WildcardFileFilter.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6D0757D493441CFB9C1B426A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Array.h"; path = "../../../../modules/juce_core/containers/juce_Array.h"; sourceTree = "SOURCE_ROOT"; }; + 6D16F5C591F5558984437145 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioDeviceSelectorComponent.cpp"; path = "../../../../modules/juce_audio_utils/gui/juce_AudioDeviceSelectorComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6DD58CBABB8009DAA5104BBC = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileSearchPath.cpp"; path = "../../../../modules/juce_core/files/juce_FileSearchPath.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6DF10AFB26794D47F3AC783B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_CameraDevice.cpp"; path = "../../../../modules/juce_video/native/juce_win32_CameraDevice.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6E00A6B4B754E3008B969B8A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiKeyboardComponent.h"; path = "../../../../modules/juce_audio_utils/gui/juce_MidiKeyboardComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 6E0DA76710F31FA13F5168B3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MouseListener.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_MouseListener.h"; sourceTree = "SOURCE_ROOT"; }; + 6E1CFF5227B2F2E200DD9EC7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_OpenGLComponent.cpp"; path = "../../../../modules/juce_opengl/native/juce_linux_OpenGLComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 6E365FC14CFBA3BD28196D3A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ChangeListener.h"; path = "../../../../modules/juce_events/broadcasters/juce_ChangeListener.h"; sourceTree = "SOURCE_ROOT"; }; + 6EF8660ACF82A6472884ABB6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_StandardHeader.h"; path = "../../../../modules/juce_core/system/juce_StandardHeader.h"; sourceTree = "SOURCE_ROOT"; }; + 6FCC44A5DB0B881454AAD300 = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; }; + 70350B2642B3D062D0A8D239 = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = System/Library/Frameworks/QuartzCore.framework; sourceTree = SDKROOT; }; + 709D153E2940C162215E31F7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ChoicePropertyComponent.cpp"; path = "../../../../modules/juce_gui_basics/properties/juce_ChoicePropertyComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 717A5E2F84E8D281325E9C1C = { isa = PBXFileReference; lastKnownFileType = file.xml; name = treedemo.xml; path = "../../Binary Data/treedemo.xml"; sourceTree = "SOURCE_ROOT"; }; + 720BE81011A4F54822E7F498 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GlowEffect.cpp"; path = "../../../../modules/juce_graphics/effects/juce_GlowEffect.cpp"; sourceTree = "SOURCE_ROOT"; }; + 72421270611D3B09781CA634 = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; }; + 725D10330456FC57C9FEA75D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RelativeRectangle.h"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativeRectangle.h"; sourceTree = "SOURCE_ROOT"; }; + 726A4629ED6E091D24471CA8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SystemClipboard.h"; path = "../../../../modules/juce_gui_basics/keyboard/juce_SystemClipboard.h"; sourceTree = "SOURCE_ROOT"; }; + 72C3E3A3E2760E1ECB6BD30A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PluginDirectoryScanner.cpp"; path = "../../../../modules/juce_audio_processors/scanning/juce_PluginDirectoryScanner.cpp"; sourceTree = "SOURCE_ROOT"; }; + 72FF1B91B6590B036636E20B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_XmlDocument.cpp"; path = "../../../../modules/juce_core/xml/juce_XmlDocument.cpp"; sourceTree = "SOURCE_ROOT"; }; + 73108C67E00C3C958FFD23D4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = FontsAndTextDemo.cpp; path = ../../Source/demos/FontsAndTextDemo.cpp; sourceTree = "SOURCE_ROOT"; }; + 731FFEA1471A03D05AED1B77 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RelativeCoordinate.h"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativeCoordinate.h"; sourceTree = "SOURCE_ROOT"; }; + 7323A374566B649091DB8837 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioProcessorEditor.h"; path = "../../../../modules/juce_audio_processors/processors/juce_AudioProcessorEditor.h"; sourceTree = "SOURCE_ROOT"; }; + 7334C493C3EC57C4AA200F01 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MP3AudioFormat.h"; path = "../../../../modules/juce_audio_formats/codecs/juce_MP3AudioFormat.h"; sourceTree = "SOURCE_ROOT"; }; + 737F8D074841EE88B24DC761 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Memory.h"; path = "../../../../modules/juce_core/memory/juce_Memory.h"; sourceTree = "SOURCE_ROOT"; }; + 73AC2ABA9094C062E8DA773E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Line.h"; path = "../../../../modules/juce_graphics/geometry/juce_Line.h"; sourceTree = "SOURCE_ROOT"; }; + 7415D37F43E9CA0C5D924D17 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Colours.cpp"; path = "../../../../modules/juce_graphics/colour/juce_Colours.cpp"; sourceTree = "SOURCE_ROOT"; }; + 7434F00C0F5768C4CFFC9C30 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_BufferingAudioSource.cpp"; path = "../../../../modules/juce_audio_basics/sources/juce_BufferingAudioSource.cpp"; sourceTree = "SOURCE_ROOT"; }; + 74390F0BB6A54198B7EE12CE = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_KeyMappingEditorComponent.h"; path = "../../../../modules/juce_gui_extra/misc/juce_KeyMappingEditorComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 747D307A1A0D468103D4B20E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ApplicationCommandInfo.cpp"; path = "../../../../modules/juce_gui_basics/commands/juce_ApplicationCommandInfo.cpp"; sourceTree = "SOURCE_ROOT"; }; + 74C5EA2191F9A05902D76BB3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MouseEvent.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_MouseEvent.h"; sourceTree = "SOURCE_ROOT"; }; + 74D36012BEBC6FDD72B0572F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TabbedButtonBar.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_TabbedButtonBar.cpp"; sourceTree = "SOURCE_ROOT"; }; + 7551834E76E49E9114B16B2B = { isa = PBXFileReference; lastKnownFileType = image.png; name = juce.png; path = "../../Binary Data/juce.png"; sourceTree = "SOURCE_ROOT"; }; + 760B6B73C7C332980801C0C7 = { isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_gui_basics/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + 7667028F4EC27060934DCF30 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Clipboard.cpp"; path = "../../../../modules/juce_gui_basics/native/juce_linux_Clipboard.cpp"; sourceTree = "SOURCE_ROOT"; }; + 766F3BD777CA786CD6BE023E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_data_structures.mm"; path = "../../../../modules/juce_data_structures/juce_data_structures.mm"; sourceTree = "SOURCE_ROOT"; }; + 768D628853DDE9E4EF563DE4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_audio_processors.h"; path = "../../../../modules/juce_audio_processors/juce_audio_processors.h"; sourceTree = "SOURCE_ROOT"; }; + 77488721DFFE4D0C22E19299 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ReferenceCountedObject.h"; path = "../../../../modules/juce_core/memory/juce_ReferenceCountedObject.h"; sourceTree = "SOURCE_ROOT"; }; + 7763574CC15B89B5BD8A4307 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_QuickTimeAudioFormat.cpp"; path = "../../../../modules/juce_audio_formats/codecs/juce_QuickTimeAudioFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; + 77845C048A123FF3D2619158 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_WindowsRegistry.h"; path = "../../../../modules/juce_core/misc/juce_WindowsRegistry.h"; sourceTree = "SOURCE_ROOT"; }; + 77CB4C3F4C72996179768CB0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioFormatReaderSource.cpp"; path = "../../../../modules/juce_audio_formats/format/juce_AudioFormatReaderSource.cpp"; sourceTree = "SOURCE_ROOT"; }; + 785F32963F7F6458F3D4DC3D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioIODevice.h"; path = "../../../../modules/juce_audio_devices/audio_io/juce_AudioIODevice.h"; sourceTree = "SOURCE_ROOT"; }; + 78AB95E1E7C39B3794F44E24 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LinkedListPointer.h"; path = "../../../../modules/juce_core/containers/juce_LinkedListPointer.h"; sourceTree = "SOURCE_ROOT"; }; + 78C4635C8F91A9A513C6B9DA = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileDragAndDropTarget.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_FileDragAndDropTarget.h"; sourceTree = "SOURCE_ROOT"; }; + 79078F37EB6919AA440017FC = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Component.cpp"; path = "../../../../modules/juce_gui_basics/components/juce_Component.cpp"; sourceTree = "SOURCE_ROOT"; }; + 79441FABE26CE4CF9BA128CC = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TimeSliceThread.h"; path = "../../../../modules/juce_core/threads/juce_TimeSliceThread.h"; sourceTree = "SOURCE_ROOT"; }; + 7985BF3EF947A7955C94364C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_NamedPipe.cpp"; path = "../../../../modules/juce_core/network/juce_NamedPipe.cpp"; sourceTree = "SOURCE_ROOT"; }; + 79E54897373142A27EC0FC40 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_InterprocessConnection.cpp"; path = "../../../../modules/juce_events/interprocess/juce_InterprocessConnection.cpp"; sourceTree = "SOURCE_ROOT"; }; + 7B0C40F57724D3021F83F423 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_video.h"; path = "../../../../modules/juce_video/juce_video.h"; sourceTree = "SOURCE_ROOT"; }; + 7B53B778BF20B1BC43E2D562 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_BigInteger.cpp"; path = "../../../../modules/juce_core/maths/juce_BigInteger.cpp"; sourceTree = "SOURCE_ROOT"; }; + 7BB52DAA6A783F0194EEF869 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Label.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_Label.h"; sourceTree = "SOURCE_ROOT"; }; + 7BB9913643FCE12B216AD8C8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ModalComponentManager.cpp"; path = "../../../../modules/juce_gui_basics/components/juce_ModalComponentManager.cpp"; sourceTree = "SOURCE_ROOT"; }; + 7C1A682DC90937487D6A4B0A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ComponentListener.h"; path = "../../../../modules/juce_gui_basics/components/juce_ComponentListener.h"; sourceTree = "SOURCE_ROOT"; }; + 7C57A68F39036348C34D73EC = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Synthesiser.h"; path = "../../../../modules/juce_audio_basics/synthesisers/juce_Synthesiser.h"; sourceTree = "SOURCE_ROOT"; }; + 7C7834D5AB7E6656A4CECF2F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_audio_devices.mm"; path = "../../../../modules/juce_audio_devices/juce_audio_devices.mm"; sourceTree = "SOURCE_ROOT"; }; + 7D01B73D4ECD4899173EE882 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_QuickTimeMovieComponent.cpp"; path = "../../../../modules/juce_video/native/juce_win32_QuickTimeMovieComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 7D12F1C172F94A735E17ADD4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ColourGradient.h"; path = "../../../../modules/juce_graphics/colour/juce_ColourGradient.h"; sourceTree = "SOURCE_ROOT"; }; + 7DA4BF4F615254D8AFD37BEE = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Button.h"; path = "../../../../modules/juce_gui_basics/buttons/juce_Button.h"; sourceTree = "SOURCE_ROOT"; }; + 7E0006CE91286527B25433FF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ResamplingAudioSource.h"; path = "../../../../modules/juce_audio_basics/sources/juce_ResamplingAudioSource.h"; sourceTree = "SOURCE_ROOT"; }; + 7E6041874E267458572B93A1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MissingGLDefinitions.h"; path = "../../../../modules/juce_opengl/native/juce_MissingGLDefinitions.h"; sourceTree = "SOURCE_ROOT"; }; + 7E6AEB024827FD9ACB353BB6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MemoryMappedFile.h"; path = "../../../../modules/juce_core/files/juce_MemoryMappedFile.h"; sourceTree = "SOURCE_ROOT"; }; + 7EF1F0BC4F4DE2986856DE41 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Viewport.h"; path = "../../../../modules/juce_gui_basics/layout/juce_Viewport.h"; sourceTree = "SOURCE_ROOT"; }; + 7F2A4EF4DE29CE775FF0F5E5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ResizableBorderComponent.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_ResizableBorderComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 7F580113B80A85759A406E81 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Files.cpp"; path = "../../../../modules/juce_core/native/juce_linux_Files.cpp"; sourceTree = "SOURCE_ROOT"; }; + 7F65B8E1571AA346AA2F2FE8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ReverbAudioSource.cpp"; path = "../../../../modules/juce_audio_basics/sources/juce_ReverbAudioSource.cpp"; sourceTree = "SOURCE_ROOT"; }; + 7FC1A0B1663AC9262104D715 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_KeyListener.h"; path = "../../../../modules/juce_gui_basics/keyboard/juce_KeyListener.h"; sourceTree = "SOURCE_ROOT"; }; + 8042D0D2B38EBD19652CBA55 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OldSchoolLookAndFeel.cpp"; path = "../../../../modules/juce_gui_extra/lookandfeel/juce_OldSchoolLookAndFeel.cpp"; sourceTree = "SOURCE_ROOT"; }; + 805B94425CD56EA78E0A705B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AudioDemoPlaybackPage.h; path = ../../Source/demos/AudioDemoPlaybackPage.h; sourceTree = "SOURCE_ROOT"; }; + 80E7D8D4E601BCC20054475E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ActionBroadcaster.h"; path = "../../../../modules/juce_events/broadcasters/juce_ActionBroadcaster.h"; sourceTree = "SOURCE_ROOT"; }; + 80EEC26431102B212C9F873B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PathIterator.cpp"; path = "../../../../modules/juce_graphics/geometry/juce_PathIterator.cpp"; sourceTree = "SOURCE_ROOT"; }; + 814313374CD209A40282985E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PluginDescription.h"; path = "../../../../modules/juce_audio_processors/processors/juce_PluginDescription.h"; sourceTree = "SOURCE_ROOT"; }; + 8154D2D681E028B8783E5331 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_mac_CoreGraphicsHelpers.h"; path = "../../../../modules/juce_graphics/native/juce_mac_CoreGraphicsHelpers.h"; sourceTree = "SOURCE_ROOT"; }; + 81641BC45BAA99D207B153A7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = RenderingTestComponent.cpp; path = ../../Source/demos/RenderingTestComponent.cpp; sourceTree = "SOURCE_ROOT"; }; + 823A2690E2229E32DE984AD2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileOutputStream.cpp"; path = "../../../../modules/juce_core/files/juce_FileOutputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; + 82474A9673BE92E34D03FE39 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Threads.cpp"; path = "../../../../modules/juce_core/native/juce_android_Threads.cpp"; sourceTree = "SOURCE_ROOT"; }; + 825BDA58C2694CE7F3FC2494 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ComponentBuilder.h"; path = "../../../../modules/juce_gui_basics/layout/juce_ComponentBuilder.h"; sourceTree = "SOURCE_ROOT"; }; + 82AD87FA68D9DDD78F9A4674 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileBasedDocument.h"; path = "../../../../modules/juce_gui_extra/documents/juce_FileBasedDocument.h"; sourceTree = "SOURCE_ROOT"; }; + 82DD6AB8F5279385455B0769 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ToneGeneratorAudioSource.h"; path = "../../../../modules/juce_audio_basics/sources/juce_ToneGeneratorAudioSource.h"; sourceTree = "SOURCE_ROOT"; }; + 830186B50B369AD64C539EE1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GZIPDecompressorInputStream.cpp"; path = "../../../../modules/juce_core/zip/juce_GZIPDecompressorInputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; + 834DCAD1857B654514D4A0BD = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_CharacterFunctions.cpp"; path = "../../../../modules/juce_core/text/juce_CharacterFunctions.cpp"; sourceTree = "SOURCE_ROOT"; }; + 8391251872CF6C7C11F11EEC = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Identifier.cpp"; path = "../../../../modules/juce_core/text/juce_Identifier.cpp"; sourceTree = "SOURCE_ROOT"; }; + 83D67DD10BD2ACDC0984ADCB = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = InterprocessCommsDemo.cpp; path = ../../Source/demos/InterprocessCommsDemo.cpp; sourceTree = "SOURCE_ROOT"; }; + 840EF2C371FCC5690DA216F6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SHA256.h"; path = "../../../../modules/juce_cryptography/hashing/juce_SHA256.h"; sourceTree = "SOURCE_ROOT"; }; + 8565630D87FEE505D50CE2EF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OpenGLExtensions.h"; path = "../../../../modules/juce_opengl/native/juce_OpenGLExtensions.h"; sourceTree = "SOURCE_ROOT"; }; + 85D1779E60213BC6670E2C75 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_StringArray.h"; path = "../../../../modules/juce_core/text/juce_StringArray.h"; sourceTree = "SOURCE_ROOT"; }; + 8603713AFBC316218045A963 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MemoryInputStream.cpp"; path = "../../../../modules/juce_core/streams/juce_MemoryInputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; + 868D4BEF6B94EB7BF659CF01 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_core.mm"; path = "../../../../modules/juce_core/juce_core.mm"; sourceTree = "SOURCE_ROOT"; }; + 86A52913E895EFD9C4D43D04 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioThumbnailCache.h"; path = "../../../../modules/juce_audio_utils/gui/juce_AudioThumbnailCache.h"; sourceTree = "SOURCE_ROOT"; }; + 86DDC7DDD8BFE56FCA73E397 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_GenericAudioProcessorEditor.h"; path = "../../../../modules/juce_audio_processors/processors/juce_GenericAudioProcessorEditor.h"; sourceTree = "SOURCE_ROOT"; }; + 86DF811859C602F24589AC3D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FilenameComponent.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FilenameComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 877D61C08ADC5B13C2627327 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = OpenGLDemo.cpp; path = ../../Source/demos/OpenGLDemo.cpp; sourceTree = "SOURCE_ROOT"; }; + 87EDA764A802069F89CEC355 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LowLevelGraphicsPostScriptRenderer.h"; path = "../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsPostScriptRenderer.h"; sourceTree = "SOURCE_ROOT"; }; + 87FB016388B49E97FCCBE69B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Matrix3D.h"; path = "../../../../modules/juce_opengl/opengl/juce_Matrix3D.h"; sourceTree = "SOURCE_ROOT"; }; + 8878426C7F58CB22969E7133 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OpenGLContext.h"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLContext.h"; sourceTree = "SOURCE_ROOT"; }; + 89006BBD5040A06E6C559F16 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_VSTPluginFormat.h"; path = "../../../../modules/juce_audio_processors/format_types/juce_VSTPluginFormat.h"; sourceTree = "SOURCE_ROOT"; }; + 890F3D7DA5BC01DACF8E5431 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_events.mm"; path = "../../../../modules/juce_events/juce_events.mm"; sourceTree = "SOURCE_ROOT"; }; + 8939B318C3AF6793C72D8A9E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ArrayAllocationBase.h"; path = "../../../../modules/juce_core/containers/juce_ArrayAllocationBase.h"; sourceTree = "SOURCE_ROOT"; }; + 893D867B3AB93E4D96AF060E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ProgressBar.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_ProgressBar.h"; sourceTree = "SOURCE_ROOT"; }; + 896140063D12A19D1DCBF3DF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OldSchoolLookAndFeel.h"; path = "../../../../modules/juce_gui_extra/lookandfeel/juce_OldSchoolLookAndFeel.h"; sourceTree = "SOURCE_ROOT"; }; + 897420C9C4D80F1AE5F80637 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Label.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_Label.cpp"; sourceTree = "SOURCE_ROOT"; }; + 89ABB9AFCDB73A409754BE48 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_StringPairArray.h"; path = "../../../../modules/juce_core/text/juce_StringPairArray.h"; sourceTree = "SOURCE_ROOT"; }; + 89F519023C03C9908F761BAE = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileBrowserListener.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileBrowserListener.h"; sourceTree = "SOURCE_ROOT"; }; + 8A15EDB6321B758A3EEF635B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileOutputStream.h"; path = "../../../../modules/juce_core/files/juce_FileOutputStream.h"; sourceTree = "SOURCE_ROOT"; }; + 8A29D461DA6C72497B49189C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = CodeEditorDemo.cpp; path = ../../Source/demos/CodeEditorDemo.cpp; sourceTree = "SOURCE_ROOT"; }; + 8A79588D3BEDD0DF69065099 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_StringArray.cpp"; path = "../../../../modules/juce_core/text/juce_StringArray.cpp"; sourceTree = "SOURCE_ROOT"; }; + 8B0B9E8A37911F76577E3AA8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_KeyboardFocusTraverser.h"; path = "../../../../modules/juce_gui_basics/keyboard/juce_KeyboardFocusTraverser.h"; sourceTree = "SOURCE_ROOT"; }; + 8B7490B27707118E03A50933 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_Threads.mm"; path = "../../../../modules/juce_core/native/juce_mac_Threads.mm"; sourceTree = "SOURCE_ROOT"; }; + 8CA151FDAFC858B6535BF6A3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_ActiveXComponent.cpp"; path = "../../../../modules/juce_gui_extra/native/juce_win32_ActiveXComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 8CB23F01604E12FD33256AC5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LocalisedStrings.h"; path = "../../../../modules/juce_core/text/juce_LocalisedStrings.h"; sourceTree = "SOURCE_ROOT"; }; + 8D3F5C48CD1B104A105845E9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SystemStats.h"; path = "../../../../modules/juce_core/system/juce_SystemStats.h"; sourceTree = "SOURCE_ROOT"; }; + 8D66115C77E904AB96FDF64E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ScopedWriteLock.h"; path = "../../../../modules/juce_core/threads/juce_ScopedWriteLock.h"; sourceTree = "SOURCE_ROOT"; }; + 8E6E18125D1046B97EF7AEE2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PreferencesPanel.cpp"; path = "../../../../modules/juce_gui_extra/misc/juce_PreferencesPanel.cpp"; sourceTree = "SOURCE_ROOT"; }; + 8E7F5F80EB6D99EED152A465 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_AudioUnitPluginFormat.mm"; path = "../../../../modules/juce_audio_processors/format_types/juce_AudioUnitPluginFormat.mm"; sourceTree = "SOURCE_ROOT"; }; + 8EB9B4853F225BDB97D6626E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_CoreGraphicsContext.mm"; path = "../../../../modules/juce_graphics/native/juce_mac_CoreGraphicsContext.mm"; sourceTree = "SOURCE_ROOT"; }; + 8EEB4DEB11F3DF01BA6F7528 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OpenGLShaderProgram.h"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLShaderProgram.h"; sourceTree = "SOURCE_ROOT"; }; + 8F1D89D1349B0DCC115B5D47 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Threads.cpp"; path = "../../../../modules/juce_core/native/juce_win32_Threads.cpp"; sourceTree = "SOURCE_ROOT"; }; + 8F37F4E9DB8E42EDF29DE166 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = CameraDemo.cpp; path = ../../Source/demos/CameraDemo.cpp; sourceTree = "SOURCE_ROOT"; }; + 904B316152B6C23112E0A0B1 = { isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_audio_processors/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + 90F9E3FB8FF07BA924E42DC0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Typeface.h"; path = "../../../../modules/juce_graphics/fonts/juce_Typeface.h"; sourceTree = "SOURCE_ROOT"; }; + 924667AB0E27AC2CE1EB7828 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TopLevelWindow.h"; path = "../../../../modules/juce_gui_basics/windows/juce_TopLevelWindow.h"; sourceTree = "SOURCE_ROOT"; }; + 927B5B18A655057D57C37D35 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ShapeButton.cpp"; path = "../../../../modules/juce_gui_basics/buttons/juce_ShapeButton.cpp"; sourceTree = "SOURCE_ROOT"; }; + 936C6419223D7B28CE16A72B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_BufferedInputStream.cpp"; path = "../../../../modules/juce_core/streams/juce_BufferedInputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9398049BFCAC42B8FD1E16C5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DirectXPluginFormat.h"; path = "../../../../modules/juce_audio_processors/format_types/juce_DirectXPluginFormat.h"; sourceTree = "SOURCE_ROOT"; }; + 93C594ECD5CEA7878114149A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_WebBrowserComponent.cpp"; path = "../../../../modules/juce_gui_extra/native/juce_win32_WebBrowserComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 94A9A7DF00C64509E9B5A337 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = QuickTimeDemo.cpp; path = ../../Source/demos/QuickTimeDemo.cpp; sourceTree = "SOURCE_ROOT"; }; + 94EB4630C360BA31195FA13D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioIODeviceType.cpp"; path = "../../../../modules/juce_audio_devices/audio_io/juce_AudioIODeviceType.cpp"; sourceTree = "SOURCE_ROOT"; }; + 95305C4003CD4784CA20D1D1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TextEditorKeyMapper.h"; path = "../../../../modules/juce_gui_basics/keyboard/juce_TextEditorKeyMapper.h"; sourceTree = "SOURCE_ROOT"; }; + 956A7825F42E2D33FC97CF73 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MemoryOutputStream.cpp"; path = "../../../../modules/juce_core/streams/juce_MemoryOutputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; + 95CA7C1593FFDE7AF8CDE98F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_audio_devices.h"; path = "../../../../modules/juce_audio_devices/juce_audio_devices.h"; sourceTree = "SOURCE_ROOT"; }; + 9619FDAC2D7C1E273CFBD10C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioSourcePlayer.cpp"; path = "../../../../modules/juce_audio_devices/sources/juce_AudioSourcePlayer.cpp"; sourceTree = "SOURCE_ROOT"; }; + 96C8D0EE75ABEB02422AA41F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DeletedAtShutdown.h"; path = "../../../../modules/juce_events/messages/juce_DeletedAtShutdown.h"; sourceTree = "SOURCE_ROOT"; }; + 96DDB84D9722732A64DA57A2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_CallOutBox.cpp"; path = "../../../../modules/juce_gui_basics/windows/juce_CallOutBox.cpp"; sourceTree = "SOURCE_ROOT"; }; + 973F391C41F2774E0CB8D54A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MultiTimer.h"; path = "../../../../modules/juce_events/timers/juce_MultiTimer.h"; sourceTree = "SOURCE_ROOT"; }; + 97D6A96DEE15B1C9C270FAEB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Decibels.h"; path = "../../../../modules/juce_audio_basics/effects/juce_Decibels.h"; sourceTree = "SOURCE_ROOT"; }; + 98028D7823ADA4594A8A2A22 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Messaging.cpp"; path = "../../../../modules/juce_events/native/juce_android_Messaging.cpp"; sourceTree = "SOURCE_ROOT"; }; + 988A5D1934361EB3009CD52C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_WeakReference.h"; path = "../../../../modules/juce_core/memory/juce_WeakReference.h"; sourceTree = "SOURCE_ROOT"; }; + 989587AD131FF27180BEB3D1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RectanglePlacement.h"; path = "../../../../modules/juce_graphics/placement/juce_RectanglePlacement.h"; sourceTree = "SOURCE_ROOT"; }; + 98C642B2E87A5D752E517A6D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MixerAudioSource.h"; path = "../../../../modules/juce_audio_basics/sources/juce_MixerAudioSource.h"; sourceTree = "SOURCE_ROOT"; }; + 98C6708DE85079E157822A2A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Time.cpp"; path = "../../../../modules/juce_core/time/juce_Time.cpp"; sourceTree = "SOURCE_ROOT"; }; + 98D731CDF5B6F60ED9198CC7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LowLevelGraphicsContext.h"; path = "../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsContext.h"; sourceTree = "SOURCE_ROOT"; }; + 98DD360F5D3D60539185DE90 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileSearchPathListComponent.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileSearchPathListComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 98EB4070281520EADE02212C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TableListBox.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_TableListBox.h"; sourceTree = "SOURCE_ROOT"; }; + 99971599D48BFF60437E0F44 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RelativeCoordinate.cpp"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativeCoordinate.cpp"; sourceTree = "SOURCE_ROOT"; }; + 99AAA16209763F3DA2113D1B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_AppleRemote.mm"; path = "../../../../modules/juce_gui_extra/native/juce_mac_AppleRemote.mm"; sourceTree = "SOURCE_ROOT"; }; + 99B22FB30FB36F358A932F6A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ToolbarButton.cpp"; path = "../../../../modules/juce_gui_basics/buttons/juce_ToolbarButton.cpp"; sourceTree = "SOURCE_ROOT"; }; + 99FE46FBB05F16AFF37AB6A1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ScopedLock.h"; path = "../../../../modules/juce_core/threads/juce_ScopedLock.h"; sourceTree = "SOURCE_ROOT"; }; + 9A1B5431CF0FFF248896A8F2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_AudioCDBurner.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_win32_AudioCDBurner.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9A947B1B4163730D13A4D24C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ScopedReadLock.h"; path = "../../../../modules/juce_core/threads/juce_ScopedReadLock.h"; sourceTree = "SOURCE_ROOT"; }; + 9AB36BCC26D5CC2CCC71E5E4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TooltipWindow.h"; path = "../../../../modules/juce_gui_basics/windows/juce_TooltipWindow.h"; sourceTree = "SOURCE_ROOT"; }; + 9AB8510F26D6035159042BC2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_KeyMappingEditorComponent.cpp"; path = "../../../../modules/juce_gui_extra/misc/juce_KeyMappingEditorComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9AE7533B1AD68245E130B3AC = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_opengl.mm"; path = "../../../../modules/juce_opengl/juce_opengl.mm"; sourceTree = "SOURCE_ROOT"; }; + 9AFD4A062067D5F709FA793C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_InterprocessConnectionServer.h"; path = "../../../../modules/juce_events/interprocess/juce_InterprocessConnectionServer.h"; sourceTree = "SOURCE_ROOT"; }; + 9B07C7F9F91CDF9465EE2AEE = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ImageEffectFilter.h"; path = "../../../../modules/juce_graphics/effects/juce_ImageEffectFilter.h"; sourceTree = "SOURCE_ROOT"; }; + 9B572F52342BE9169D435F1C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ScrollBar.h"; path = "../../../../modules/juce_gui_basics/layout/juce_ScrollBar.h"; sourceTree = "SOURCE_ROOT"; }; + 9B5833CD741A705B8AFAF9C0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Variant.cpp"; path = "../../../../modules/juce_core/containers/juce_Variant.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9BA092AE037F13C968200B25 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioFormat.cpp"; path = "../../../../modules/juce_audio_formats/format/juce_AudioFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9C0DB4F281D10303224E41A1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_Files.mm"; path = "../../../../modules/juce_core/native/juce_mac_Files.mm"; sourceTree = "SOURCE_ROOT"; }; + 9C5F40CA5A70DD8207F53047 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Font.h"; path = "../../../../modules/juce_graphics/fonts/juce_Font.h"; sourceTree = "SOURCE_ROOT"; }; + 9C785342B462AEB3D63418F6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_WavAudioFormat.cpp"; path = "../../../../modules/juce_audio_formats/codecs/juce_WavAudioFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9C7B5E573807ED59065B54DA = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ResizableCornerComponent.h"; path = "../../../../modules/juce_gui_basics/layout/juce_ResizableCornerComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 9CD9B6E7197079625A165653 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_SystemStats.mm"; path = "../../../../modules/juce_core/native/juce_mac_SystemStats.mm"; sourceTree = "SOURCE_ROOT"; }; + 9CF4E56974B8290F34032432 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_mac_CoreAudio.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_mac_CoreAudio.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9D042E1CAB03CFCD4B937951 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_WebBrowserComponent.h"; path = "../../../../modules/juce_gui_extra/misc/juce_WebBrowserComponent.h"; sourceTree = "SOURCE_ROOT"; }; + 9D09225ABCE19597A944DEEA = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PositionableAudioSource.h"; path = "../../../../modules/juce_audio_basics/sources/juce_PositionableAudioSource.h"; sourceTree = "SOURCE_ROOT"; }; + 9D18794763C086784ECE98D6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_BubbleComponent.cpp"; path = "../../../../modules/juce_gui_basics/misc/juce_BubbleComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9D70FB5DE184C636EC01EC67 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ListenerList.h"; path = "../../../../modules/juce_events/broadcasters/juce_ListenerList.h"; sourceTree = "SOURCE_ROOT"; }; + 9E80EC17EE6322C452E9A774 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DrawableButton.cpp"; path = "../../../../modules/juce_gui_basics/buttons/juce_DrawableButton.cpp"; sourceTree = "SOURCE_ROOT"; }; + 9E825AC2FBE27AC2BCAEA69F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_IIRFilterAudioSource.h"; path = "../../../../modules/juce_audio_basics/sources/juce_IIRFilterAudioSource.h"; sourceTree = "SOURCE_ROOT"; }; + 9F35ACC90F2A1C2E565148C8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_ios_Windowing.mm"; path = "../../../../modules/juce_gui_basics/native/juce_ios_Windowing.mm"; sourceTree = "SOURCE_ROOT"; }; + A16EC49106F4E28AD49EECC0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileSearchPath.h"; path = "../../../../modules/juce_core/files/juce_FileSearchPath.h"; sourceTree = "SOURCE_ROOT"; }; + A18C61D2206141C03B24BF9B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SelectedItemSet.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_SelectedItemSet.h"; sourceTree = "SOURCE_ROOT"; }; + A1A96650D3211A87738A9B75 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DropShadower.cpp"; path = "../../../../modules/juce_gui_basics/misc/juce_DropShadower.cpp"; sourceTree = "SOURCE_ROOT"; }; + A1D2256DD1E864A4560459F3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_VSTMidiEventList.h"; path = "../../../../modules/juce_audio_processors/format_types/juce_VSTMidiEventList.h"; sourceTree = "SOURCE_ROOT"; }; + A26D0251E9EF4FAB12D1737B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RelativeTime.h"; path = "../../../../modules/juce_core/time/juce_RelativeTime.h"; sourceTree = "SOURCE_ROOT"; }; + A2BBD7D58010E488BE904CCC = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DocumentWindow.cpp"; path = "../../../../modules/juce_gui_basics/windows/juce_DocumentWindow.cpp"; sourceTree = "SOURCE_ROOT"; }; + A3346F6C215C2CEB5F9416FC = { isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_core/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + A34C1EFF7C51BEB33C22FAFA = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TextEditor.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_TextEditor.cpp"; sourceTree = "SOURCE_ROOT"; }; + A4BF6FE6902ACF80D2E3DB60 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_win32_HiddenMessageWindow.h"; path = "../../../../modules/juce_events/native/juce_win32_HiddenMessageWindow.h"; sourceTree = "SOURCE_ROOT"; }; + A57A09A4137135A0AF6A0800 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ComponentDragger.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_ComponentDragger.h"; sourceTree = "SOURCE_ROOT"; }; + A58203002289D424A2CDF5DD = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Application.cpp"; path = "../../../../modules/juce_gui_basics/application/juce_Application.cpp"; sourceTree = "SOURCE_ROOT"; }; + A588C458AC395D8AC09A433D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MarkerList.cpp"; path = "../../../../modules/juce_gui_basics/positioning/juce_MarkerList.cpp"; sourceTree = "SOURCE_ROOT"; }; + A5A6819C57A0399C81E03301 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Network.cpp"; path = "../../../../modules/juce_core/native/juce_android_Network.cpp"; sourceTree = "SOURCE_ROOT"; }; + A6073115FE5E1E635C78DDFE = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SpinLock.h"; path = "../../../../modules/juce_core/threads/juce_SpinLock.h"; sourceTree = "SOURCE_ROOT"; }; + A6C2A4889A4E70DE735EBA4B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_LowLevelGraphicsPostScriptRenderer.cpp"; path = "../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsPostScriptRenderer.cpp"; sourceTree = "SOURCE_ROOT"; }; + A6C606F3BE6B630561EDE155 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_IIRFilterAudioSource.cpp"; path = "../../../../modules/juce_audio_basics/sources/juce_IIRFilterAudioSource.cpp"; sourceTree = "SOURCE_ROOT"; }; + A6FCBC9721E7FC9DE30B6DC4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Midi.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_linux_Midi.cpp"; sourceTree = "SOURCE_ROOT"; }; + A72FB74D13AA5C6A472E9E82 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ChangeBroadcaster.cpp"; path = "../../../../modules/juce_events/broadcasters/juce_ChangeBroadcaster.cpp"; sourceTree = "SOURCE_ROOT"; }; + A763E7AF50D548D8C4A4C3D1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioDeviceManager.h"; path = "../../../../modules/juce_audio_devices/audio_io/juce_AudioDeviceManager.h"; sourceTree = "SOURCE_ROOT"; }; + A7B3B265DACC82D9E9CFB3DA = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OpenGLGraphicsContext.h"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLGraphicsContext.h"; sourceTree = "SOURCE_ROOT"; }; + A7BD5AB895B2531A75FE0268 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BufferingAudioSource.h"; path = "../../../../modules/juce_audio_basics/sources/juce_BufferingAudioSource.h"; sourceTree = "SOURCE_ROOT"; }; + A7F413D4C880363878469E5A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_JSON.h"; path = "../../../../modules/juce_core/json/juce_JSON.h"; sourceTree = "SOURCE_ROOT"; }; + A80CC48B8215D447643CA411 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ToolbarItemFactory.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_ToolbarItemFactory.h"; sourceTree = "SOURCE_ROOT"; }; + A86557C09D01406BB6964DB6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MathsFunctions.h"; path = "../../../../modules/juce_core/maths/juce_MathsFunctions.h"; sourceTree = "SOURCE_ROOT"; }; + A8B2537E3AEB0F0B791CF030 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileInputSource.h"; path = "../../../../modules/juce_core/streams/juce_FileInputSource.h"; sourceTree = "SOURCE_ROOT"; }; + A8F2E649E566EDE8D4C42F21 = { isa = PBXFileReference; lastKnownFileType = image.png; name = "juce_icon.png"; path = "../../Binary Data/juce_icon.png"; sourceTree = "SOURCE_ROOT"; }; + A93A4042E1214A65BD70DAEB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Primes.h"; path = "../../../../modules/juce_cryptography/encryption/juce_Primes.h"; sourceTree = "SOURCE_ROOT"; }; + A9566A42230AACC1AFDC6C5F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_FileChooser.cpp"; path = "../../../../modules/juce_gui_basics/native/juce_android_FileChooser.cpp"; sourceTree = "SOURCE_ROOT"; }; + A974197873E277C3BA5DF666 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_cryptography.h"; path = "../../../../modules/juce_cryptography/juce_cryptography.h"; sourceTree = "SOURCE_ROOT"; }; + A97EC32975392744C62684F9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_gui_extra.h"; path = "../../../../modules/juce_gui_extra/juce_gui_extra.h"; sourceTree = "SOURCE_ROOT"; }; + A9958339328213FF76D8A79C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MouseInputSource.cpp"; path = "../../../../modules/juce_gui_basics/mouse/juce_MouseInputSource.cpp"; sourceTree = "SOURCE_ROOT"; }; + A9B72D6049A3539B63AE79D5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CachedComponentImage.h"; path = "../../../../modules/juce_gui_basics/components/juce_CachedComponentImage.h"; sourceTree = "SOURCE_ROOT"; }; + AA0DE5CA2B089393B110FD25 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DrawableShape.h"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawableShape.h"; sourceTree = "SOURCE_ROOT"; }; + AAABC8FBF364D9A596F4AA4E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_android_JNIHelpers.h"; path = "../../../../modules/juce_core/native/juce_android_JNIHelpers.h"; sourceTree = "SOURCE_ROOT"; }; + AAC98CB517D934F42A25416E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BubbleComponent.h"; path = "../../../../modules/juce_gui_basics/misc/juce_BubbleComponent.h"; sourceTree = "SOURCE_ROOT"; }; + AB4A28A3667EA4C8393470A7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Result.h"; path = "../../../../modules/juce_core/misc/juce_Result.h"; sourceTree = "SOURCE_ROOT"; }; + ABBA4018C1596481E7CD51CD = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_NSViewComponent.mm"; path = "../../../../modules/juce_gui_extra/native/juce_mac_NSViewComponent.mm"; sourceTree = "SOURCE_ROOT"; }; + ABDBA289C591093A65BD526B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MultiTimer.cpp"; path = "../../../../modules/juce_events/timers/juce_MultiTimer.cpp"; sourceTree = "SOURCE_ROOT"; }; + AC2D4E1081F69B20AAB47E2F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ResizableEdgeComponent.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_ResizableEdgeComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + AC3EFDDC80761A45E8BE0624 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OpenGLFrameBuffer.cpp"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLFrameBuffer.cpp"; sourceTree = "SOURCE_ROOT"; }; + ACB502AF25A235733295406E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ChangeBroadcaster.h"; path = "../../../../modules/juce_events/broadcasters/juce_ChangeBroadcaster.h"; sourceTree = "SOURCE_ROOT"; }; + ACC522FB23E25ADDD38F8F98 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioSubsectionReader.h"; path = "../../../../modules/juce_audio_formats/format/juce_AudioSubsectionReader.h"; sourceTree = "SOURCE_ROOT"; }; + AE2C0F932F7E54799FA0897C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PluginListComponent.h"; path = "../../../../modules/juce_audio_processors/scanning/juce_PluginListComponent.h"; sourceTree = "SOURCE_ROOT"; }; + AE394742FA0F2C6AA39906DD = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_OpenGLComponent.mm"; path = "../../../../modules/juce_opengl/native/juce_mac_OpenGLComponent.mm"; sourceTree = "SOURCE_ROOT"; }; + AE860FA70A2F37F4A889A9EF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ZipFile.h"; path = "../../../../modules/juce_core/zip/juce_ZipFile.h"; sourceTree = "SOURCE_ROOT"; }; + AEA287A89324FB9D48370C33 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AsyncUpdater.cpp"; path = "../../../../modules/juce_events/broadcasters/juce_AsyncUpdater.cpp"; sourceTree = "SOURCE_ROOT"; }; + AF26F1B432EF78EB76107FDA = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Timer.cpp"; path = "../../../../modules/juce_events/timers/juce_Timer.cpp"; sourceTree = "SOURCE_ROOT"; }; + AF5FD9E66E46B600914FFE53 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TabbedButtonBar.h"; path = "../../../../modules/juce_gui_basics/layout/juce_TabbedButtonBar.h"; sourceTree = "SOURCE_ROOT"; }; + AF9F8BD7FAA0567B70EA397C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_NamedPipe.h"; path = "../../../../modules/juce_core/network/juce_NamedPipe.h"; sourceTree = "SOURCE_ROOT"; }; + B0461717A1A4204943AB55C3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_Strings.mm"; path = "../../../../modules/juce_core/native/juce_mac_Strings.mm"; sourceTree = "SOURCE_ROOT"; }; + B16E1644785E869DC000112C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GenericAudioProcessorEditor.cpp"; path = "../../../../modules/juce_audio_processors/processors/juce_GenericAudioProcessorEditor.cpp"; sourceTree = "SOURCE_ROOT"; }; + B1C64086587109AA429DE418 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ArrowButton.h"; path = "../../../../modules/juce_gui_basics/buttons/juce_ArrowButton.h"; sourceTree = "SOURCE_ROOT"; }; + B1EF98E196E432165CEA08F7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MemoryBlock.h"; path = "../../../../modules/juce_core/memory/juce_MemoryBlock.h"; sourceTree = "SOURCE_ROOT"; }; + B22D28FB41374E7092AEE96C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_ios_MessageManager.mm"; path = "../../../../modules/juce_events/native/juce_ios_MessageManager.mm"; sourceTree = "SOURCE_ROOT"; }; + B2F5CA0FBCECC10EEEAD11E9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PreferencesPanel.h"; path = "../../../../modules/juce_gui_extra/misc/juce_PreferencesPanel.h"; sourceTree = "SOURCE_ROOT"; }; + B3C3985129CB310EECCBDFF7 = { isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_audio_formats/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + B3E75CAB88F9CBD5145C226C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MidiMessageSequence.cpp"; path = "../../../../modules/juce_audio_basics/midi/juce_MidiMessageSequence.cpp"; sourceTree = "SOURCE_ROOT"; }; + B3FDF6B35E4E6ED6AAA8CDE4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MidiOutput.cpp"; path = "../../../../modules/juce_audio_devices/midi_io/juce_MidiOutput.cpp"; sourceTree = "SOURCE_ROOT"; }; + B418FE6F1E2F268880AE00A8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ListBox.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_ListBox.cpp"; sourceTree = "SOURCE_ROOT"; }; + B428CC689CD359B29C67272B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CallOutBox.h"; path = "../../../../modules/juce_gui_basics/windows/juce_CallOutBox.h"; sourceTree = "SOURCE_ROOT"; }; + B523ED8502475B9BB3F392C7 = { isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_graphics/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + B53B1A87D9A58B3E056B4D8E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ImageConvolutionKernel.h"; path = "../../../../modules/juce_graphics/images/juce_ImageConvolutionKernel.h"; sourceTree = "SOURCE_ROOT"; }; + B59728841A18523C5950A51B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Timer.h"; path = "../../../../modules/juce_events/timers/juce_Timer.h"; sourceTree = "SOURCE_ROOT"; }; + B59DA3ED4F12C1FFEE433EE3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DocumentWindow.h"; path = "../../../../modules/juce_gui_basics/windows/juce_DocumentWindow.h"; sourceTree = "SOURCE_ROOT"; }; + B5B987C3029862AC58363F1A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ImageComponent.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_ImageComponent.h"; sourceTree = "SOURCE_ROOT"; }; + B62A2E9AE08575992BAE53C5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ScopedXLock.h"; path = "../../../../modules/juce_events/native/juce_ScopedXLock.h"; sourceTree = "SOURCE_ROOT"; }; + B657CFA035D5285F14DE6AD3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Threads.cpp"; path = "../../../../modules/juce_core/native/juce_linux_Threads.cpp"; sourceTree = "SOURCE_ROOT"; }; + B65938BA2A3EE3FEE9923E12 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CharacterFunctions.h"; path = "../../../../modules/juce_core/text/juce_CharacterFunctions.h"; sourceTree = "SOURCE_ROOT"; }; + B6B93A495D82478E99956AD7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Thread.h"; path = "../../../../modules/juce_core/threads/juce_Thread.h"; sourceTree = "SOURCE_ROOT"; }; + B6D34ED1DE5CC8010A1BE232 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DeletedAtShutdown.cpp"; path = "../../../../modules/juce_events/messages/juce_DeletedAtShutdown.cpp"; sourceTree = "SOURCE_ROOT"; }; + B6ECBC8983C8C13575A3420E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_StringPool.h"; path = "../../../../modules/juce_core/text/juce_StringPool.h"; sourceTree = "SOURCE_ROOT"; }; + B6F0FA98AD1AA6A3552A59FE = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PathStrokeType.cpp"; path = "../../../../modules/juce_graphics/geometry/juce_PathStrokeType.cpp"; sourceTree = "SOURCE_ROOT"; }; + B6F619428216E8DD021C6ECD = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Random.h"; path = "../../../../modules/juce_core/maths/juce_Random.h"; sourceTree = "SOURCE_ROOT"; }; + B792478999FB8A13DCE4FF99 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioProcessor.cpp"; path = "../../../../modules/juce_audio_processors/processors/juce_AudioProcessor.cpp"; sourceTree = "SOURCE_ROOT"; }; + B81FA2ED22BCC03D124031ED = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OpenGLPixelFormat.h"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLPixelFormat.h"; sourceTree = "SOURCE_ROOT"; }; + B875CBC2CBA6D01EE0AAB25C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_gui_basics.h"; path = "../../../../modules/juce_gui_basics/juce_gui_basics.h"; sourceTree = "SOURCE_ROOT"; }; + B91F3E65CE47056DAF5C4DA2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ReadWriteLock.h"; path = "../../../../modules/juce_core/threads/juce_ReadWriteLock.h"; sourceTree = "SOURCE_ROOT"; }; + B9A07B3C2CC36D0830745F31 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioFormatWriter.h"; path = "../../../../modules/juce_audio_formats/format/juce_AudioFormatWriter.h"; sourceTree = "SOURCE_ROOT"; }; + BA710A8F1D5B056162B7CB3E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_EdgeTable.h"; path = "../../../../modules/juce_graphics/geometry/juce_EdgeTable.h"; sourceTree = "SOURCE_ROOT"; }; + BA8CA56A4E1F30984B8E4208 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MouseInputSource.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_MouseInputSource.h"; sourceTree = "SOURCE_ROOT"; }; + BADAE0896F7D4AEAA481B257 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PluginDirectoryScanner.h"; path = "../../../../modules/juce_audio_processors/scanning/juce_PluginDirectoryScanner.h"; sourceTree = "SOURCE_ROOT"; }; + BAEAC53813F354CE5E045E9F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Desktop.h"; path = "../../../../modules/juce_gui_basics/components/juce_Desktop.h"; sourceTree = "SOURCE_ROOT"; }; + BAF897CBD4F6F7382D4DC72A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ReferenceCountedArray.h"; path = "../../../../modules/juce_core/containers/juce_ReferenceCountedArray.h"; sourceTree = "SOURCE_ROOT"; }; + BB94B67B5B0EC06015621F59 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RelativeParallelogram.h"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativeParallelogram.h"; sourceTree = "SOURCE_ROOT"; }; + BBA5037F5ABAFDAB54EB6903 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioPlayHead.h"; path = "../../../../modules/juce_audio_processors/processors/juce_AudioPlayHead.h"; sourceTree = "SOURCE_ROOT"; }; + BC3978DEBCC88DB02860E20C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioSampleBuffer.cpp"; path = "../../../../modules/juce_audio_basics/buffers/juce_AudioSampleBuffer.cpp"; sourceTree = "SOURCE_ROOT"; }; + BC4827D57EDF30E1886FCEF4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Random.cpp"; path = "../../../../modules/juce_core/maths/juce_Random.cpp"; sourceTree = "SOURCE_ROOT"; }; + BC6C5A22BC49D1F16B797A02 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MemoryOutputStream.h"; path = "../../../../modules/juce_core/streams/juce_MemoryOutputStream.h"; sourceTree = "SOURCE_ROOT"; }; + BC94E7AC0B57A89C259A26A8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = RenderingTestComponent.h; path = ../../Source/demos/RenderingTestComponent.h; sourceTree = "SOURCE_ROOT"; }; + BC966E4E8DE070E482B296C6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ResamplingAudioSource.cpp"; path = "../../../../modules/juce_audio_basics/sources/juce_ResamplingAudioSource.cpp"; sourceTree = "SOURCE_ROOT"; }; + BCEAC6346AB15421E3A5AB70 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ResizableEdgeComponent.h"; path = "../../../../modules/juce_gui_basics/layout/juce_ResizableEdgeComponent.h"; sourceTree = "SOURCE_ROOT"; }; + BD1E818B710742D5EC07BAE8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DrawableComposite.cpp"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawableComposite.cpp"; sourceTree = "SOURCE_ROOT"; }; + BD69603F635BE80BC99C7865 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = TreeViewDemo.cpp; path = ../../Source/demos/TreeViewDemo.cpp; sourceTree = "SOURCE_ROOT"; }; + BD7E3C305F0976D5C5395090 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileChooserDialogBox.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileChooserDialogBox.h"; sourceTree = "SOURCE_ROOT"; }; + BD84136646D8700D41BE7EA2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ImageConvolutionKernel.cpp"; path = "../../../../modules/juce_graphics/images/juce_ImageConvolutionKernel.cpp"; sourceTree = "SOURCE_ROOT"; }; + BDC0E815578ED04901FB9251 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_HyperlinkButton.cpp"; path = "../../../../modules/juce_gui_basics/buttons/juce_HyperlinkButton.cpp"; sourceTree = "SOURCE_ROOT"; }; + BE4673AB9542C19D1C1C3A63 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ModalComponentManager.h"; path = "../../../../modules/juce_gui_basics/components/juce_ModalComponentManager.h"; sourceTree = "SOURCE_ROOT"; }; + BE95C8978503BFA15B38D3C4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PNGLoader.cpp"; path = "../../../../modules/juce_graphics/image_formats/juce_PNGLoader.cpp"; sourceTree = "SOURCE_ROOT"; }; + BECF3DC9A5405B9856DEF975 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ios_Audio.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_ios_Audio.cpp"; sourceTree = "SOURCE_ROOT"; }; + BF2093D486040BEC64210EBB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ColourSelector.h"; path = "../../../../modules/juce_gui_extra/misc/juce_ColourSelector.h"; sourceTree = "SOURCE_ROOT"; }; + BF59C96BC3BCB29CCB421861 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_graphics.h"; path = "../../../../modules/juce_graphics/juce_graphics.h"; sourceTree = "SOURCE_ROOT"; }; + BF6F272194D16055D6A90D94 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ComponentListener.cpp"; path = "../../../../modules/juce_gui_basics/components/juce_ComponentListener.cpp"; sourceTree = "SOURCE_ROOT"; }; + BF76B8C5007732311AF50543 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RectangleList.cpp"; path = "../../../../modules/juce_graphics/geometry/juce_RectangleList.cpp"; sourceTree = "SOURCE_ROOT"; }; + C03AF9257B94504D7270416A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ImagePreviewComponent.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_ImagePreviewComponent.h"; sourceTree = "SOURCE_ROOT"; }; + C0608375ACE89B422431E9A9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ApplicationCommandManager.h"; path = "../../../../modules/juce_gui_basics/commands/juce_ApplicationCommandManager.h"; sourceTree = "SOURCE_ROOT"; }; + C069C5FCE1539E9F85C7F29E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FilenameComponent.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FilenameComponent.h"; sourceTree = "SOURCE_ROOT"; }; + C07BEF22C24DD225C5D0940E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MD5.cpp"; path = "../../../../modules/juce_cryptography/hashing/juce_MD5.cpp"; sourceTree = "SOURCE_ROOT"; }; + C0E38F040D44C1474E42753A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = MainDemoWindow.h; path = ../../Source/MainDemoWindow.h; sourceTree = "SOURCE_ROOT"; }; + C1A15473893B354642F7531A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_HeapBlock.h"; path = "../../../../modules/juce_core/memory/juce_HeapBlock.h"; sourceTree = "SOURCE_ROOT"; }; + C2072DE0D1FF6AA90A700D25 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_gui_extra.mm"; path = "../../../../modules/juce_gui_extra/juce_gui_extra.mm"; sourceTree = "SOURCE_ROOT"; }; + C20DAAC0E23CCCB8FF64DFED = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ChildProcess.cpp"; path = "../../../../modules/juce_core/threads/juce_ChildProcess.cpp"; sourceTree = "SOURCE_ROOT"; }; + C2692BB8791ADE59158D9F21 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SplashScreen.h"; path = "../../../../modules/juce_gui_extra/misc/juce_SplashScreen.h"; sourceTree = "SOURCE_ROOT"; }; + C26D5CE23205932DA1062C85 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DynamicLibrary.h"; path = "../../../../modules/juce_core/threads/juce_DynamicLibrary.h"; sourceTree = "SOURCE_ROOT"; }; + C2AFCF5805D239DF9F9DE2D3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CharPointer_UTF8.h"; path = "../../../../modules/juce_core/text/juce_CharPointer_UTF8.h"; sourceTree = "SOURCE_ROOT"; }; + C2D1EE14670950990F0769B7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TimeSliceThread.cpp"; path = "../../../../modules/juce_core/threads/juce_TimeSliceThread.cpp"; sourceTree = "SOURCE_ROOT"; }; + C2E3B2EC0F1EB46349FBAF63 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ValueTree.h"; path = "../../../../modules/juce_data_structures/values/juce_ValueTree.h"; sourceTree = "SOURCE_ROOT"; }; + C30EE4EFDB359E2A9D58F677 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RectanglePlacement.cpp"; path = "../../../../modules/juce_graphics/placement/juce_RectanglePlacement.cpp"; sourceTree = "SOURCE_ROOT"; }; + C355FD0ABB078A342BF6A6AA = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ReverbAudioSource.h"; path = "../../../../modules/juce_audio_basics/sources/juce_ReverbAudioSource.h"; sourceTree = "SOURCE_ROOT"; }; + C3A77F115D67C0E24C65FC45 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_CodeEditorComponent.cpp"; path = "../../../../modules/juce_gui_extra/code_editor/juce_CodeEditorComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + C3E0EB7CDA04886FA8323C17 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_GlyphArrangement.h"; path = "../../../../modules/juce_graphics/fonts/juce_GlyphArrangement.h"; sourceTree = "SOURCE_ROOT"; }; + C3F7B701463826A93DFE5587 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_UndoManager.h"; path = "../../../../modules/juce_data_structures/undomanager/juce_UndoManager.h"; sourceTree = "SOURCE_ROOT"; }; + C427F2763EEE1F1C11E8EAF9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_KnownPluginList.cpp"; path = "../../../../modules/juce_audio_processors/scanning/juce_KnownPluginList.cpp"; sourceTree = "SOURCE_ROOT"; }; + C4A730DEDDA33FA9A06CDA82 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Message.h"; path = "../../../../modules/juce_events/messages/juce_Message.h"; sourceTree = "SOURCE_ROOT"; }; + C4C6D6B8731B400B29A3A4E7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TabbedComponent.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_TabbedComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + C50F17EA37434C3C7B52C3BD = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Drawable.cpp"; path = "../../../../modules/juce_gui_basics/drawables/juce_Drawable.cpp"; sourceTree = "SOURCE_ROOT"; }; + C526F791D3168AC0E87C2DD9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ToneGeneratorAudioSource.cpp"; path = "../../../../modules/juce_audio_basics/sources/juce_ToneGeneratorAudioSource.cpp"; sourceTree = "SOURCE_ROOT"; }; + C583836F43E174944C6098FC = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileInputSource.cpp"; path = "../../../../modules/juce_core/streams/juce_FileInputSource.cpp"; sourceTree = "SOURCE_ROOT"; }; + C5CF3A35D0896F95596FAC4C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_GZIPCompressorOutputStream.h"; path = "../../../../modules/juce_core/zip/juce_GZIPCompressorOutputStream.h"; sourceTree = "SOURCE_ROOT"; }; + C5FF20572B734C4EE8F204B6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_SHA256.cpp"; path = "../../../../modules/juce_cryptography/hashing/juce_SHA256.cpp"; sourceTree = "SOURCE_ROOT"; }; + C66E08F5118F529FC623733E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CallbackMessage.h"; path = "../../../../modules/juce_events/messages/juce_CallbackMessage.h"; sourceTree = "SOURCE_ROOT"; }; + C766591C3E8CB978D6026F56 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_InterProcessLock.h"; path = "../../../../modules/juce_core/threads/juce_InterProcessLock.h"; sourceTree = "SOURCE_ROOT"; }; + C7835B9A7DA88BE84F1366E6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Expression.h"; path = "../../../../modules/juce_core/maths/juce_Expression.h"; sourceTree = "SOURCE_ROOT"; }; + C7DAB2D405C907CDA83C2924 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioProcessorEditor.cpp"; path = "../../../../modules/juce_audio_processors/processors/juce_AudioProcessorEditor.cpp"; sourceTree = "SOURCE_ROOT"; }; + C7EBDC32959BE4405ECE2148 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ImageButton.cpp"; path = "../../../../modules/juce_gui_basics/buttons/juce_ImageButton.cpp"; sourceTree = "SOURCE_ROOT"; }; + C87942E350F974B22047D457 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = WebBrowserDemo.cpp; path = ../../Source/demos/WebBrowserDemo.cpp; sourceTree = "SOURCE_ROOT"; }; + C8E9F901721D86767BD458B3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileBrowserComponent.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileBrowserComponent.h"; sourceTree = "SOURCE_ROOT"; }; + C92A08C836B3326D6EDB14E6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_mac_CoreMidi.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_mac_CoreMidi.cpp"; sourceTree = "SOURCE_ROOT"; }; + C94D5056497677CC3FCB5AAD = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Logger.cpp"; path = "../../../../modules/juce_core/logging/juce_Logger.cpp"; sourceTree = "SOURCE_ROOT"; }; + C9AEAD8B2366F9508E63A178 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Component.h"; path = "../../../../modules/juce_gui_basics/components/juce_Component.h"; sourceTree = "SOURCE_ROOT"; }; + C9E621CAC46AE272EFB807E3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MemoryBlock.cpp"; path = "../../../../modules/juce_core/memory/juce_MemoryBlock.cpp"; sourceTree = "SOURCE_ROOT"; }; + CA5844E270055529F3F3818F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Process.h"; path = "../../../../modules/juce_core/threads/juce_Process.h"; sourceTree = "SOURCE_ROOT"; }; + CA799D1FF79E811275318304 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_SystemStats.cpp"; path = "../../../../modules/juce_core/native/juce_linux_SystemStats.cpp"; sourceTree = "SOURCE_ROOT"; }; + CAF961A7AFDB2830B419214C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileSearchPathListComponent.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileSearchPathListComponent.h"; sourceTree = "SOURCE_ROOT"; }; + CB179EBD4C1AB9F3F59E9D4A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Synthesiser.cpp"; path = "../../../../modules/juce_audio_basics/synthesisers/juce_Synthesiser.cpp"; sourceTree = "SOURCE_ROOT"; }; + CB68DC2B2EA837D6869AAACD = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TableHeaderComponent.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_TableHeaderComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + CC0BC6AC42809A4F4FA21452 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Colours.h"; path = "../../../../modules/juce_graphics/colour/juce_Colours.h"; sourceTree = "SOURCE_ROOT"; }; + CC1307C0AEE134EEA46F68EA = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DrawableImage.cpp"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawableImage.cpp"; sourceTree = "SOURCE_ROOT"; }; + CCB4250C97008BF3E5F12D0B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ComboBox.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_ComboBox.h"; sourceTree = "SOURCE_ROOT"; }; + CCD6FA03199F37A9CCA6340D = { isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_cryptography/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + CCE2933FEB395826A5710C6F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioProcessorPlayer.h"; path = "../../../../modules/juce_audio_utils/players/juce_AudioProcessorPlayer.h"; sourceTree = "SOURCE_ROOT"; }; + CCFBB22AC379DC3B3A839CA1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MouseCursor.cpp"; path = "../../../../modules/juce_gui_basics/mouse/juce_MouseCursor.cpp"; sourceTree = "SOURCE_ROOT"; }; + CD20E020C903C1E3AE12A1CF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = AudioDemoSynthPage.h; path = ../../Source/demos/AudioDemoSynthPage.h; sourceTree = "SOURCE_ROOT"; }; + CD2AEFC254C92A49F2D5DA64 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_KeyPress.cpp"; path = "../../../../modules/juce_gui_basics/keyboard/juce_KeyPress.cpp"; sourceTree = "SOURCE_ROOT"; }; + CD9EDF2EE190AFB02CCC3F49 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_StretchableLayoutManager.h"; path = "../../../../modules/juce_gui_basics/layout/juce_StretchableLayoutManager.h"; sourceTree = "SOURCE_ROOT"; }; + CE28146B186C11F00BCBBBBD = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Identifier.h"; path = "../../../../modules/juce_core/text/juce_Identifier.h"; sourceTree = "SOURCE_ROOT"; }; + CE3DF5A017336CABFDD6926A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_WindowsMediaAudioFormat.h"; path = "../../../../modules/juce_audio_formats/codecs/juce_WindowsMediaAudioFormat.h"; sourceTree = "SOURCE_ROOT"; }; + CE66BAB575B13375E1EE937C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MenuBarModel.h"; path = "../../../../modules/juce_gui_basics/menus/juce_MenuBarModel.h"; sourceTree = "SOURCE_ROOT"; }; + CE882EE8C05AC3A809E41332 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_StringPool.cpp"; path = "../../../../modules/juce_core/text/juce_StringPool.cpp"; sourceTree = "SOURCE_ROOT"; }; + CEAE0C8168A4E71C6D607659 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Registry.cpp"; path = "../../../../modules/juce_core/native/juce_win32_Registry.cpp"; sourceTree = "SOURCE_ROOT"; }; + CEF96D559AAB6D61FB8A0288 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_SystemStats.cpp"; path = "../../../../modules/juce_core/native/juce_android_SystemStats.cpp"; sourceTree = "SOURCE_ROOT"; }; + CF0DB23C5950CB619CF8D812 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_mac_CarbonViewWrapperComponent.h"; path = "../../../../modules/juce_gui_extra/native/juce_mac_CarbonViewWrapperComponent.h"; sourceTree = "SOURCE_ROOT"; }; + CF15EC19906A7A7C3D9E2407 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DynamicObject.cpp"; path = "../../../../modules/juce_core/containers/juce_DynamicObject.cpp"; sourceTree = "SOURCE_ROOT"; }; + CF2A1897A3C5610A282A2713 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ComponentMovementWatcher.h"; path = "../../../../modules/juce_gui_basics/layout/juce_ComponentMovementWatcher.h"; sourceTree = "SOURCE_ROOT"; }; + CF6533A53CCA75A2FAFACAB8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ImageFileFormat.h"; path = "../../../../modules/juce_graphics/images/juce_ImageFileFormat.h"; sourceTree = "SOURCE_ROOT"; }; + CFB2E2DFBCBAA9BF91E7CB35 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Toolbar.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_Toolbar.h"; sourceTree = "SOURCE_ROOT"; }; + CFF27E108381EC6BA758EE7E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Files.cpp"; path = "../../../../modules/juce_core/native/juce_android_Files.cpp"; sourceTree = "SOURCE_ROOT"; }; + D0B9859FCC534C510C7F37A7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PixelFormats.h"; path = "../../../../modules/juce_graphics/colour/juce_PixelFormats.h"; sourceTree = "SOURCE_ROOT"; }; + D0C3588FF8EF229B8F0CBCA8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = AudioDemoLatencyPage.cpp; path = ../../Source/demos/AudioDemoLatencyPage.cpp; sourceTree = "SOURCE_ROOT"; }; + D1CADE1C7E74F37D0D57575B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GlyphArrangement.cpp"; path = "../../../../modules/juce_graphics/fonts/juce_GlyphArrangement.cpp"; sourceTree = "SOURCE_ROOT"; }; + D226630AEE6B273B6B1ED622 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_UIViewComponent.h"; path = "../../../../modules/juce_gui_extra/embedding/juce_UIViewComponent.h"; sourceTree = "SOURCE_ROOT"; }; + D25A334218A3D87F4D0BBD15 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileLogger.cpp"; path = "../../../../modules/juce_core/logging/juce_FileLogger.cpp"; sourceTree = "SOURCE_ROOT"; }; + D27A3A58DCC37B5EFC3AD745 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AbstractFifo.h"; path = "../../../../modules/juce_core/containers/juce_AbstractFifo.h"; sourceTree = "SOURCE_ROOT"; }; + D27D41D4A06E286FDBDF7549 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MouseCursor.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_MouseCursor.h"; sourceTree = "SOURCE_ROOT"; }; + D2C40CDF46D894BFC72BDC56 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OpenGLHelpers.h"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLHelpers.h"; sourceTree = "SOURCE_ROOT"; }; + D2F161366612A4CDA6372113 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Vector3D.h"; path = "../../../../modules/juce_opengl/opengl/juce_Vector3D.h"; sourceTree = "SOURCE_ROOT"; }; + D33142A214D7AC7A8ED27E4A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DialogWindow.h"; path = "../../../../modules/juce_gui_basics/windows/juce_DialogWindow.h"; sourceTree = "SOURCE_ROOT"; }; + D33EBA9793C56D73135BD1F0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RelativeParallelogram.cpp"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativeParallelogram.cpp"; sourceTree = "SOURCE_ROOT"; }; + D3AD73A360B24493ECC4E092 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_NSViewComponentPeer.mm"; path = "../../../../modules/juce_gui_basics/native/juce_mac_NSViewComponentPeer.mm"; sourceTree = "SOURCE_ROOT"; }; + D3BA1978EF5806DF8F3B32ED = { isa = PBXFileReference; lastKnownFileType = file.wav; name = cello.wav; path = "../../Binary Data/cello.wav"; sourceTree = "SOURCE_ROOT"; }; + D45EF873A4BD7D0E56274D79 = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreMIDI.framework; path = System/Library/Frameworks/CoreMIDI.framework; sourceTree = SDKROOT; }; + D4CA129DE8BC9F6EDC2BCAD2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = ApplicationStartup.cpp; path = ../../Source/ApplicationStartup.cpp; sourceTree = "SOURCE_ROOT"; }; + D4DC657E222FE2BDE92EC58E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PathStrokeType.h"; path = "../../../../modules/juce_graphics/geometry/juce_PathStrokeType.h"; sourceTree = "SOURCE_ROOT"; }; + D57651845D6D9438DEA62F98 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LeakedObjectDetector.h"; path = "../../../../modules/juce_core/memory/juce_LeakedObjectDetector.h"; sourceTree = "SOURCE_ROOT"; }; + D5DE603FFC184C590E2A6678 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioCDBurner.h"; path = "../../../../modules/juce_audio_devices/audio_cd/juce_AudioCDBurner.h"; sourceTree = "SOURCE_ROOT"; }; + D602AE751C3C12A6458FCCD5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ResizableBorderComponent.h"; path = "../../../../modules/juce_gui_basics/layout/juce_ResizableBorderComponent.h"; sourceTree = "SOURCE_ROOT"; }; + D66048AF1E05FF836B2A813A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_OpenGLComponent.cpp"; path = "../../../../modules/juce_opengl/native/juce_win32_OpenGLComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + D6C9614D1C6493DBEE370646 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileBasedDocument.cpp"; path = "../../../../modules/juce_gui_extra/documents/juce_FileBasedDocument.cpp"; sourceTree = "SOURCE_ROOT"; }; + D6D0F076F54C7D669A9717C9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OpenGLComponent.h"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLComponent.h"; sourceTree = "SOURCE_ROOT"; }; + D7239D5B984E07808E2DB28C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OpenGLHelpers.cpp"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLHelpers.cpp"; sourceTree = "SOURCE_ROOT"; }; + D7E6E92AA32B7D51489FD256 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ComponentBoundsConstrainer.h"; path = "../../../../modules/juce_gui_basics/layout/juce_ComponentBoundsConstrainer.h"; sourceTree = "SOURCE_ROOT"; }; + D8081154AA3072D2F2C4B625 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_posix_SharedCode.h"; path = "../../../../modules/juce_core/native/juce_posix_SharedCode.h"; sourceTree = "SOURCE_ROOT"; }; + D866C4735BF1EF0CA24FC1FB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Draggable3DOrientation.h"; path = "../../../../modules/juce_opengl/opengl/juce_Draggable3DOrientation.h"; sourceTree = "SOURCE_ROOT"; }; + D8AFC87A918360FFC9D96BE5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Atomic.h"; path = "../../../../modules/juce_core/memory/juce_Atomic.h"; sourceTree = "SOURCE_ROOT"; }; + D9282DF6556197822D2BD5D4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PropertySet.cpp"; path = "../../../../modules/juce_core/containers/juce_PropertySet.cpp"; sourceTree = "SOURCE_ROOT"; }; + DA0D464BE6E90C3668AD7C73 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_FileChooser.mm"; path = "../../../../modules/juce_gui_basics/native/juce_mac_FileChooser.mm"; sourceTree = "SOURCE_ROOT"; }; + DA2FCB30EE2A41085FF93B9B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Files.cpp"; path = "../../../../modules/juce_core/native/juce_win32_Files.cpp"; sourceTree = "SOURCE_ROOT"; }; + DB507A1F7BB7489344FF90A9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Range.h"; path = "../../../../modules/juce_core/maths/juce_Range.h"; sourceTree = "SOURCE_ROOT"; }; + DD40A3E06CA320D95F3924BA = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_StretchableLayoutResizerBar.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_StretchableLayoutResizerBar.cpp"; sourceTree = "SOURCE_ROOT"; }; + DDEC339D244553357E234C92 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_DirectSound.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_win32_DirectSound.cpp"; sourceTree = "SOURCE_ROOT"; }; + DE7617FB215CD22983E7D736 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_HyperlinkButton.h"; path = "../../../../modules/juce_gui_basics/buttons/juce_HyperlinkButton.h"; sourceTree = "SOURCE_ROOT"; }; + DE80C724F35B1464853FDE9E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SubregionStream.h"; path = "../../../../modules/juce_core/streams/juce_SubregionStream.h"; sourceTree = "SOURCE_ROOT"; }; + DEA38275A65473112CD34252 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TreeView.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_TreeView.h"; sourceTree = "SOURCE_ROOT"; }; + DEB23C98FEC261260F63B6A4 = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioToolbox.framework; path = System/Library/Frameworks/AudioToolbox.framework; sourceTree = SDKROOT; }; + DED6D04CFED991C5924B78F0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MD5.h"; path = "../../../../modules/juce_cryptography/hashing/juce_MD5.h"; sourceTree = "SOURCE_ROOT"; }; + DF2D86EEA8031481C1FD08B2 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileTreeComponent.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileTreeComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + DF590CD70352A30FA3BD9835 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_SystemTrayIcon.cpp"; path = "../../../../modules/juce_gui_extra/native/juce_linux_SystemTrayIcon.cpp"; sourceTree = "SOURCE_ROOT"; }; + DFF6BF0BB64714A494A25E93 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RSAKey.h"; path = "../../../../modules/juce_cryptography/encryption/juce_RSAKey.h"; sourceTree = "SOURCE_ROOT"; }; + E0AE248F52C70AA1DEA1A5A1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MidiOutput.h"; path = "../../../../modules/juce_audio_devices/midi_io/juce_MidiOutput.h"; sourceTree = "SOURCE_ROOT"; }; + E249D6583995E0E6D0B3EADF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioSourcePlayer.h"; path = "../../../../modules/juce_audio_devices/sources/juce_AudioSourcePlayer.h"; sourceTree = "SOURCE_ROOT"; }; + E26E3AC933F70B56B7B83EFA = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MACAddress.cpp"; path = "../../../../modules/juce_core/network/juce_MACAddress.cpp"; sourceTree = "SOURCE_ROOT"; }; + E34B2BCD14634ED3BC9F5431 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioProcessorGraph.h"; path = "../../../../modules/juce_audio_processors/processors/juce_AudioProcessorGraph.h"; sourceTree = "SOURCE_ROOT"; }; + E3D24CD61D75922457DB9642 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Midi.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_win32_Midi.cpp"; sourceTree = "SOURCE_ROOT"; }; + E48615F1F7D8213F6DC24FC9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ThreadPool.h"; path = "../../../../modules/juce_core/threads/juce_ThreadPool.h"; sourceTree = "SOURCE_ROOT"; }; + E94E773858B05D719E61DD6A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ChannelRemappingAudioSource.h"; path = "../../../../modules/juce_audio_basics/sources/juce_ChannelRemappingAudioSource.h"; sourceTree = "SOURCE_ROOT"; }; + EE3E9902579904E57D1A5A18 = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = System/Library/Frameworks/CoreGraphics.framework; sourceTree = SDKROOT; }; + D119A3871626EC2B8EFCB0D4 = { isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = JuceDemo.app; sourceTree = "BUILT_PRODUCTS_DIR"; }; + D2F7081BE9A6E24BA7CD1A46 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioThumbnailCache.cpp"; path = "../../../../modules/juce_audio_utils/gui/juce_AudioThumbnailCache.cpp"; sourceTree = "SOURCE_ROOT"; }; + DEE1FC30E2FBB97921616CA9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Font.cpp"; path = "../../../../modules/juce_graphics/fonts/juce_Font.cpp"; sourceTree = "SOURCE_ROOT"; }; + DF3B7E1BC0AF0C826C47745B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ResizableWindow.h"; path = "../../../../modules/juce_gui_basics/windows/juce_ResizableWindow.h"; sourceTree = "SOURCE_ROOT"; }; + DF47E8197FF5A9309C062C61 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Justification.cpp"; path = "../../../../modules/juce_graphics/placement/juce_Justification.cpp"; sourceTree = "SOURCE_ROOT"; }; + DFEAB699C98B89FF0B85F557 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_DirectWriteTypeLayout.cpp"; path = "../../../../modules/juce_graphics/native/juce_win32_DirectWriteTypeLayout.cpp"; sourceTree = "SOURCE_ROOT"; }; + E15F577E82B2E12597447472 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ApplicationBase.h"; path = "../../../../modules/juce_events/messages/juce_ApplicationBase.h"; sourceTree = "SOURCE_ROOT"; }; + E2732267CD7C0C3BDB17456A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BooleanPropertyComponent.h"; path = "../../../../modules/juce_gui_basics/properties/juce_BooleanPropertyComponent.h"; sourceTree = "SOURCE_ROOT"; }; + E274BFB25D87D93EDBC23114 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_OggVorbisAudioFormat.h"; path = "../../../../modules/juce_audio_formats/codecs/juce_OggVorbisAudioFormat.h"; sourceTree = "SOURCE_ROOT"; }; + E38DE271B32DCC95E52C72DA = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DrawableButton.h"; path = "../../../../modules/juce_gui_basics/buttons/juce_DrawableButton.h"; sourceTree = "SOURCE_ROOT"; }; + E3FC888CC9FAD650C469ACC5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TextButton.cpp"; path = "../../../../modules/juce_gui_basics/buttons/juce_TextButton.cpp"; sourceTree = "SOURCE_ROOT"; }; + E453E312D607E60FAA6D1BF0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MultiDocumentPanel.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_MultiDocumentPanel.cpp"; sourceTree = "SOURCE_ROOT"; }; + E46977801F19277F4D3B324B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OpenGLImage.cpp"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLImage.cpp"; sourceTree = "SOURCE_ROOT"; }; + E48E2824CED9933934127522 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BasicNativeHeaders.h"; path = "../../../../modules/juce_core/native/juce_BasicNativeHeaders.h"; sourceTree = "SOURCE_ROOT"; }; + E5DC4602843749A071B17576 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Slider.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_Slider.h"; sourceTree = "SOURCE_ROOT"; }; + E6B13A51A01032961340735D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_StringPairArray.cpp"; path = "../../../../modules/juce_core/text/juce_StringPairArray.cpp"; sourceTree = "SOURCE_ROOT"; }; + E6C582E67DC0C4D0CCA18166 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ShapeButton.h"; path = "../../../../modules/juce_gui_basics/buttons/juce_ShapeButton.h"; sourceTree = "SOURCE_ROOT"; }; + E71C493A0E10D1AE4A3DB2AB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AffineTransform.h"; path = "../../../../modules/juce_graphics/geometry/juce_AffineTransform.h"; sourceTree = "SOURCE_ROOT"; }; + E7AECF0B52A9554442685859 = { isa = PBXFileReference; lastKnownFileType = file.xml; name = "demo table data.xml"; path = "../../Binary Data/demo table data.xml"; sourceTree = "SOURCE_ROOT"; }; + E86CBC37B034041BFF5A10DB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FillType.h"; path = "../../../../modules/juce_graphics/colour/juce_FillType.h"; sourceTree = "SOURCE_ROOT"; }; + E8FE41E21AD1029DD709FD7C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ModifierKeys.h"; path = "../../../../modules/juce_gui_basics/keyboard/juce_ModifierKeys.h"; sourceTree = "SOURCE_ROOT"; }; + E963816786695359C91EF35D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TooltipClient.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_TooltipClient.h"; sourceTree = "SOURCE_ROOT"; }; + E9C3901F0B4AC410025D2086 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TextLayout.h"; path = "../../../../modules/juce_graphics/fonts/juce_TextLayout.h"; sourceTree = "SOURCE_ROOT"; }; + EA1313A79BF10BE60238F3D5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LassoComponent.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_LassoComponent.h"; sourceTree = "SOURCE_ROOT"; }; + EA20E7FB414DD777C1618333 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioIODeviceType.h"; path = "../../../../modules/juce_audio_devices/audio_io/juce_AudioIODeviceType.h"; sourceTree = "SOURCE_ROOT"; }; + EACB4129861122ABC1A2BB37 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OutputStream.cpp"; path = "../../../../modules/juce_core/streams/juce_OutputStream.cpp"; sourceTree = "SOURCE_ROOT"; }; + EADE149294A3A3509EC61E6B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_audio_formats.mm"; path = "../../../../modules/juce_audio_formats/juce_audio_formats.mm"; sourceTree = "SOURCE_ROOT"; }; + EAE786E1125C492A7A8B1594 = { isa = PBXFileReference; lastKnownFileType = file.zip; name = icons.zip; path = "../../Binary Data/icons.zip"; sourceTree = "SOURCE_ROOT"; }; + EB902A37F3AA5BC62D523F5B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ApplicationCommandTarget.h"; path = "../../../../modules/juce_gui_basics/commands/juce_ApplicationCommandTarget.h"; sourceTree = "SOURCE_ROOT"; }; + EB9E8921A8D36EDD7FF3245B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileFilter.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileFilter.h"; sourceTree = "SOURCE_ROOT"; }; + EC180AD91D1B068D7A8F33BB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DirectoryContentsDisplayComponent.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_DirectoryContentsDisplayComponent.h"; sourceTree = "SOURCE_ROOT"; }; + EC89003BF30329181BB3EA4B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Quaternion.h"; path = "../../../../modules/juce_opengl/opengl/juce_Quaternion.h"; sourceTree = "SOURCE_ROOT"; }; + EC93857F367028441A067F45 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TooltipWindow.cpp"; path = "../../../../modules/juce_gui_basics/windows/juce_TooltipWindow.cpp"; sourceTree = "SOURCE_ROOT"; }; + EC97B274D075920B2490E0D8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CriticalSection.h"; path = "../../../../modules/juce_core/threads/juce_CriticalSection.h"; sourceTree = "SOURCE_ROOT"; }; + ECCEB7E5D6B18F1376E34EDC = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FileChooser.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileChooser.h"; sourceTree = "SOURCE_ROOT"; }; + ECEFF5A78873B5B388046E7A = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Messaging.cpp"; path = "../../../../modules/juce_events/native/juce_win32_Messaging.cpp"; sourceTree = "SOURCE_ROOT"; }; + ED467279290C0AA942FB2B27 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OggVorbisAudioFormat.cpp"; path = "../../../../modules/juce_audio_formats/codecs/juce_OggVorbisAudioFormat.cpp"; sourceTree = "SOURCE_ROOT"; }; + ED9A2289AECFD9B928A9A08A = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_IIRFilter.h"; path = "../../../../modules/juce_audio_basics/effects/juce_IIRFilter.h"; sourceTree = "SOURCE_ROOT"; }; + ED9FAEA9116C568942BAD000 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_ios_OpenGLComponent.mm"; path = "../../../../modules/juce_opengl/native/juce_ios_OpenGLComponent.mm"; sourceTree = "SOURCE_ROOT"; }; + EDDA4ADA880E3B78143801D0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_WASAPI.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_win32_WASAPI.cpp"; sourceTree = "SOURCE_ROOT"; }; + EDDDD60231231B8221711145 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MouseListener.cpp"; path = "../../../../modules/juce_gui_basics/mouse/juce_MouseListener.cpp"; sourceTree = "SOURCE_ROOT"; }; + EE2DACF73E083928ABDDA63B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DirectoryIterator.h"; path = "../../../../modules/juce_core/files/juce_DirectoryIterator.h"; sourceTree = "SOURCE_ROOT"; }; + EEA3A060739CA049C1339B9F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioCDReader.cpp"; path = "../../../../modules/juce_audio_devices/audio_cd/juce_AudioCDReader.cpp"; sourceTree = "SOURCE_ROOT"; }; + EEC74D7DAF96D7ADBC917976 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ChannelRemappingAudioSource.cpp"; path = "../../../../modules/juce_audio_basics/sources/juce_ChannelRemappingAudioSource.cpp"; sourceTree = "SOURCE_ROOT"; }; + F10EEBAD564A55F50CEE7181 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = AudioDemoPlaybackPage.cpp; path = ../../Source/demos/AudioDemoPlaybackPage.cpp; sourceTree = "SOURCE_ROOT"; }; + F123556B79ADA02F5E549727 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ApplicationProperties.cpp"; path = "../../../../modules/juce_data_structures/app_properties/juce_ApplicationProperties.cpp"; sourceTree = "SOURCE_ROOT"; }; + F1EEED4DC97678861086B282 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PerformanceCounter.cpp"; path = "../../../../modules/juce_core/time/juce_PerformanceCounter.cpp"; sourceTree = "SOURCE_ROOT"; }; + F242ACDC3C1ED82039C45915 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ActionBroadcaster.cpp"; path = "../../../../modules/juce_events/broadcasters/juce_ActionBroadcaster.cpp"; sourceTree = "SOURCE_ROOT"; }; + F250E301B85CB6140FC236A6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioSampleBuffer.h"; path = "../../../../modules/juce_audio_basics/buffers/juce_AudioSampleBuffer.h"; sourceTree = "SOURCE_ROOT"; }; + F26F7C7D6D9EBA2693914AA1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ImagePreviewComponent.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_ImagePreviewComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + F28314027C0D8E36A9FE43E3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_CameraDevice.mm"; path = "../../../../modules/juce_video/native/juce_mac_CameraDevice.mm"; sourceTree = "SOURCE_ROOT"; }; + F315F477DE84E05E9E440ADA = { isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_audio_basics/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + F339FB092FFFBB9B95E7F732 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Audio.cpp"; path = "../../../../modules/juce_audio_devices/native/juce_android_Audio.cpp"; sourceTree = "SOURCE_ROOT"; }; + F48AE8E1A9A1608BEB4C16A9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ScrollBar.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_ScrollBar.cpp"; sourceTree = "SOURCE_ROOT"; }; + F49BD909BB1DD4BE7B669FA6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_WavAudioFormat.h"; path = "../../../../modules/juce_audio_formats/codecs/juce_WavAudioFormat.h"; sourceTree = "SOURCE_ROOT"; }; + F4C50E1A3DC066396613C401 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_WildcardFileFilter.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_WildcardFileFilter.h"; sourceTree = "SOURCE_ROOT"; }; + F534B4A3A4E46A8311A44649 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Toolbar.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_Toolbar.cpp"; sourceTree = "SOURCE_ROOT"; }; + F53E1E312FBE025F836AA718 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DirectoryIterator.cpp"; path = "../../../../modules/juce_core/files/juce_DirectoryIterator.cpp"; sourceTree = "SOURCE_ROOT"; }; + F5B3E5C6F10A97AEA5786AC5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioTransportSource.cpp"; path = "../../../../modules/juce_audio_devices/sources/juce_AudioTransportSource.cpp"; sourceTree = "SOURCE_ROOT"; }; + F664E58A0B3899FB98CF8E1C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ComponentAnimator.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_ComponentAnimator.cpp"; sourceTree = "SOURCE_ROOT"; }; + F6AE140F7CE1B08B52A8C8AF = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TextPropertyComponent.cpp"; path = "../../../../modules/juce_gui_basics/properties/juce_TextPropertyComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + F6D1D5FD437BF40AC208AA2E = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FileChooser.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_FileChooser.cpp"; sourceTree = "SOURCE_ROOT"; }; + F76944FF282DB2FB4FB1B229 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Time.h"; path = "../../../../modules/juce_core/time/juce_Time.h"; sourceTree = "SOURCE_ROOT"; }; + F796E49F8209912C1E8E0ADC = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ButtonPropertyComponent.cpp"; path = "../../../../modules/juce_gui_basics/properties/juce_ButtonPropertyComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; + F7BA444D0130F3613252D00D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_AudioCDReader.mm"; path = "../../../../modules/juce_audio_devices/native/juce_mac_AudioCDReader.mm"; sourceTree = "SOURCE_ROOT"; }; + F84DBFF75F5334EA86AB2E37 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_CPlusPlusCodeTokeniser.cpp"; path = "../../../../modules/juce_gui_extra/code_editor/juce_CPlusPlusCodeTokeniser.cpp"; sourceTree = "SOURCE_ROOT"; }; + F84F19D5BEF7E7AE00C8CDD7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AbstractFifo.cpp"; path = "../../../../modules/juce_core/containers/juce_AbstractFifo.cpp"; sourceTree = "SOURCE_ROOT"; }; + F87BBC8FD2374628CFBC2EA6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = AudioDemoSetupPage.cpp; path = ../../Source/demos/AudioDemoSetupPage.cpp; sourceTree = "SOURCE_ROOT"; }; + F8FB27C3434BB255CED42861 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_MouseCursor.mm"; path = "../../../../modules/juce_gui_basics/native/juce_mac_MouseCursor.mm"; sourceTree = "SOURCE_ROOT"; }; + F93E02181A90B71B0C16629F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CameraDevice.h"; path = "../../../../modules/juce_video/capture/juce_CameraDevice.h"; sourceTree = "SOURCE_ROOT"; }; + F9474BBBA977F050C5C66E61 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioIODevice.cpp"; path = "../../../../modules/juce_audio_devices/audio_io/juce_AudioIODevice.cpp"; sourceTree = "SOURCE_ROOT"; }; + F97E60F478662C7A4B413E5D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioFormatManager.h"; path = "../../../../modules/juce_audio_formats/format/juce_AudioFormatManager.h"; sourceTree = "SOURCE_ROOT"; }; + F9FE574AC4D30AE44C0DF98C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Socket.h"; path = "../../../../modules/juce_core/network/juce_Socket.h"; sourceTree = "SOURCE_ROOT"; }; + FABF3148A2F5D3ACD48E8838 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_LowLevelGraphicsSoftwareRenderer.cpp"; path = "../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsSoftwareRenderer.cpp"; sourceTree = "SOURCE_ROOT"; }; + FAC8B4FB05C57F3461E3FE30 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ThreadWithProgressWindow.h"; path = "../../../../modules/juce_gui_basics/windows/juce_ThreadWithProgressWindow.h"; sourceTree = "SOURCE_ROOT"; }; + FAD925A5A262E8ACF4F40354 = { isa = PBXFileReference; lastKnownFileType = file; name = "juce_module_info"; path = "../../../../modules/juce_audio_utils/juce_module_info"; sourceTree = "SOURCE_ROOT"; }; + FB73EE6CD424A7543EE172D0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioUnitPluginFormat.h"; path = "../../../../modules/juce_audio_processors/format_types/juce_AudioUnitPluginFormat.h"; sourceTree = "SOURCE_ROOT"; }; + FBDA70B8FF6C6D669F9CF540 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_DirectoryContentsList.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_DirectoryContentsList.h"; sourceTree = "SOURCE_ROOT"; }; + FC1201FBE79AED3FC831ABAF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_TextInputTarget.h"; path = "../../../../modules/juce_gui_basics/keyboard/juce_TextInputTarget.h"; sourceTree = "SOURCE_ROOT"; }; + FC19E4B3335185A35678B597 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Sampler.cpp"; path = "../../../../modules/juce_audio_formats/sampler/juce_Sampler.cpp"; sourceTree = "SOURCE_ROOT"; }; + FC87932ECFE90EB63664B6BE = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_audio_utils.h"; path = "../../../../modules/juce_audio_utils/juce_audio_utils.h"; sourceTree = "SOURCE_ROOT"; }; + FD36FD1612A96DDE000211E0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_StretchableLayoutResizerBar.h"; path = "../../../../modules/juce_gui_basics/layout/juce_StretchableLayoutResizerBar.h"; sourceTree = "SOURCE_ROOT"; }; + FE75937BEEFDA021D7767B59 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Colour.cpp"; path = "../../../../modules/juce_graphics/colour/juce_Colour.cpp"; sourceTree = "SOURCE_ROOT"; }; + FE87322C0C3E84720083F1C5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RSAKey.cpp"; path = "../../../../modules/juce_cryptography/encryption/juce_RSAKey.cpp"; sourceTree = "SOURCE_ROOT"; }; + FE89A070890FF722F9A128C0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioProcessorGraph.cpp"; path = "../../../../modules/juce_audio_processors/processors/juce_AudioProcessorGraph.cpp"; sourceTree = "SOURCE_ROOT"; }; + FE9A5898294228EB7F439951 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_OpenGLTexture.cpp"; path = "../../../../modules/juce_opengl/opengl/juce_OpenGLTexture.cpp"; sourceTree = "SOURCE_ROOT"; }; + FEA724E71E582903094A455F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TextLayout.cpp"; path = "../../../../modules/juce_graphics/fonts/juce_TextLayout.cpp"; sourceTree = "SOURCE_ROOT"; }; + FEB2CCC12BBABEEC23384FDD = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_FileChooser.cpp"; path = "../../../../modules/juce_gui_basics/native/juce_linux_FileChooser.cpp"; sourceTree = "SOURCE_ROOT"; }; + FF93CCEC386B165840328831 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RelativeCoordinatePositioner.cpp"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativeCoordinatePositioner.cpp"; sourceTree = "SOURCE_ROOT"; }; + FFAD5C56A4E4038FB532565F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_AudioCDBurner.mm"; path = "../../../../modules/juce_audio_devices/native/juce_mac_AudioCDBurner.mm"; sourceTree = "SOURCE_ROOT"; }; + FFF09A9DCDFECD32F25F0CDF = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_osx_MessageQueue.h"; path = "../../../../modules/juce_events/native/juce_osx_MessageQueue.h"; sourceTree = "SOURCE_ROOT"; }; + D5607E34AA2399378CA6F72B = { isa = PBXGroup; children = ( + D0C3588FF8EF229B8F0CBCA8, + 2C48ED514887D2F673B3B1BC, + F10EEBAD564A55F50CEE7181, + 805B94425CD56EA78E0A705B, + 200550A2DDDB012E26D6D005, + 1EC913A06CFCE35C9AE2AD29, + F87BBC8FD2374628CFBC2EA6, + 38B68694E6EDD6C29D1198D7, + 2275EB468CEA505ADE14C225, + CD20E020C903C1E3AE12A1CF, + 690BE5039AADEF787D6E13D9, + 35CA3E9AEE7BC7C005653A25, + 8F37F4E9DB8E42EDF29DE166, + 8A29D461DA6C72497B49189C, + 3C35334FE9451182FE7EC2B8, + 3D11CF883EC31F74D97920D3, + 73108C67E00C3C958FFD23D4, + 83D67DD10BD2ACDC0984ADCB, + 877D61C08ADC5B13C2627327, + 94A9A7DF00C64509E9B5A337, + 81641BC45BAA99D207B153A7, + BC94E7AC0B57A89C259A26A8, + 5ED8A827D78184F2E01A5511, + 01E2555EA1347B8C8CFC438D, + BD69603F635BE80BC99C7865, + C87942E350F974B22047D457, + 6649385F220EB0B654AB61FB ); name = Demos; sourceTree = ""; }; + C2E4D2C86DFBB8F14142D379 = { isa = PBXGroup; children = ( + D3BA1978EF5806DF8F3B32ED, + E7AECF0B52A9554442685859, + EAE786E1125C492A7A8B1594, + 7551834E76E49E9114B16B2B, + A8F2E649E566EDE8D4C42F21, + 717A5E2F84E8D281325E9C1C ); name = "Binary Data"; sourceTree = ""; }; + DC7F5A47CBDE7E3A9AA86F85 = { isa = PBXGroup; children = ( + D4CA129DE8BC9F6EDC2BCAD2, + 2CE3420FBFD3136621EAFB1D, + C0E38F040D44C1474E42753A, + 4916E6E942FDEA8E55DEEF64, + D5607E34AA2399378CA6F72B, + C2E4D2C86DFBB8F14142D379 ); name = "Juce Demo"; sourceTree = ""; }; + AAB457A3E170486A669BF7EA = { isa = PBXGroup; children = ( + 13C15669B35168563D72F6F8, + 669FD4C70B8BF2B87DEAFB73, + BC3978DEBCC88DB02860E20C, + F250E301B85CB6140FC236A6 ); name = buffers; sourceTree = ""; }; + 826DCB7D5E55310994355B53 = { isa = PBXGroup; children = ( + 3EBBCD2A01201C7CC76389CC, + 6413A99AB17F3551937E397F, + 44616895C0F4219D47AC7FEB, + 21605BADE3692FBBAE44F961, + 3A3C8D765CD02651E2C39102, + 614AE257736D79B36015DBC4, + 66F2929C04B6E230FFA975C8, + 5031A666D462F64BF254F81C, + B3E75CAB88F9CBD5145C226C, + 1F7DFE97A858AACDAF9EBB7D ); name = midi; sourceTree = ""; }; + 24381AC39E3E1E43706536D6 = { isa = PBXGroup; children = ( + 97D6A96DEE15B1C9C270FAEB, + 2CD9DB6EFEAE8354A089CAC9, + ED9A2289AECFD9B928A9A08A, + 2DC1A9FFE2FADDF611409D6B ); name = effects; sourceTree = ""; }; + 50C8E80F5986688023F19CAF = { isa = PBXGroup; children = ( + 3FFA55DA900886D84F5A0A7A, + 7434F00C0F5768C4CFFC9C30, + A7BD5AB895B2531A75FE0268, + EEC74D7DAF96D7ADBC917976, + E94E773858B05D719E61DD6A, + A6C606F3BE6B630561EDE155, + 9E825AC2FBE27AC2BCAEA69F, + 67DA4E3A02A5697DE923E0C5, + 98C642B2E87A5D752E517A6D, + 9D09225ABCE19597A944DEEA, + BC966E4E8DE070E482B296C6, + 7E0006CE91286527B25433FF, + 7F65B8E1571AA346AA2F2FE8, + C355FD0ABB078A342BF6A6AA, + C526F791D3168AC0E87C2DD9, + 82DD6AB8F5279385455B0769 ); name = sources; sourceTree = ""; }; + 5140207688AFBD7CD5356327 = { isa = PBXGroup; children = ( + CB179EBD4C1AB9F3F59E9D4A, + 7C57A68F39036348C34D73EC ); name = synthesisers; sourceTree = ""; }; + 0596B4096DD627F972BB026F = { isa = PBXGroup; children = ( + AAB457A3E170486A669BF7EA, + 826DCB7D5E55310994355B53, + 24381AC39E3E1E43706536D6, + 50C8E80F5986688023F19CAF, + 5140207688AFBD7CD5356327, + F315F477DE84E05E9E440ADA, + 1A03C9B88919CA79D176E738 ); name = "juce_audio_basics"; sourceTree = ""; }; + CEDD0F91222D58B6765E12BC = { isa = PBXGroup; children = ( + 37E2F2B9AFE2B6C1AA51A11A, + A763E7AF50D548D8C4A4C3D1, + F9474BBBA977F050C5C66E61, + 785F32963F7F6458F3D4DC3D, + 94EB4630C360BA31195FA13D, + EA20E7FB414DD777C1618333 ); name = "audio_io"; sourceTree = ""; }; + 9BA0F84BBF38B6B5DC702BCA = { isa = PBXGroup; children = ( + 3817585001205632BF471A05, + 3D47500F131A273A8C29AAE2, + 3477734262959639DF347D4E, + B3FDF6B35E4E6ED6AAA8CDE4, + E0AE248F52C70AA1DEA1A5A1 ); name = "midi_io"; sourceTree = ""; }; + 901A0B1C81CB2E60827ADA89 = { isa = PBXGroup; children = ( + 9619FDAC2D7C1E273CFBD10C, + E249D6583995E0E6D0B3EADF, + F5B3E5C6F10A97AEA5786AC5, + 0074FA7EFC2898B71E22A945 ); name = sources; sourceTree = ""; }; + 5D1463D0CAF326A035EFF063 = { isa = PBXGroup; children = ( + D5DE603FFC184C590E2A6678, + EEA3A060739CA049C1339B9F, + 4A9E5DAE13069017FB5CAEB2 ); name = "audio_cd"; sourceTree = ""; }; + E05126DD45F861CA44DBDCF0 = { isa = PBXGroup; children = ( + F339FB092FFFBB9B95E7F732, + 570C04EF3724ADC8B2EF0563, + BECF3DC9A5405B9856DEF975, + 149369775B267A04F9B0ACAE, + 5741A7FD2C785C3F65377A45, + 2AE22D5AB8B2D3C381FBAC81, + A6FCBC9721E7FC9DE30B6DC4, + FFAD5C56A4E4038FB532565F, + F7BA444D0130F3613252D00D, + 9CF4E56974B8290F34032432, + C92A08C836B3326D6EDB14E6, + 447E2F5BA5478E8233CE1A1B, + 4DCA9EF26A5F2CCF0B74F8A1, + 9A1B5431CF0FFF248896A8F2, + 54B6F856BA80756C0C139326, + DDEC339D244553357E234C92, + E3D24CD61D75922457DB9642, + EDDA4ADA880E3B78143801D0 ); name = native; sourceTree = ""; }; + 21689DE0A3F6A8E3550F027F = { isa = PBXGroup; children = ( + CEDD0F91222D58B6765E12BC, + 9BA0F84BBF38B6B5DC702BCA, + 901A0B1C81CB2E60827ADA89, + 5D1463D0CAF326A035EFF063, + E05126DD45F861CA44DBDCF0, + 4CC2034DFB9E19F81E590E6E, + 95CA7C1593FFDE7AF8CDE98F ); name = "juce_audio_devices"; sourceTree = ""; }; + E10D88B71B2B0B8E403457CC = { isa = PBXGroup; children = ( + 9BA092AE037F13C968200B25, + 4B86077AAC3D6C026B3E31CE, + 1A5382EC797EF333806B5AFC, + F97E60F478662C7A4B413E5D, + 25FECE7ACACB29E1725A6A17, + 64485EF2AE378418411A8FCB, + 77CB4C3F4C72996179768CB0, + 12B9DB1413B7647920B53C07, + 38CDDFDC6697BF7BCFC8DAFC, + B9A07B3C2CC36D0830745F31, + 0D59D15FB8BC9FE203586FB3, + ACC522FB23E25ADDD38F8F98 ); name = format; sourceTree = ""; }; + A383EDCA7A04B91EAA0A044E = { isa = PBXGroup; children = ( + 1264CE16C2930583C8AB553D, + 2C712E1519F7D4410288D35D, + 11E6C0893A679EAD806DA5C2, + 0DFB01AAFD08E7BAD09DDAA2, + 359C09D53EFC4C1C557BC959, + 4306A3B2696CCE1D811D8C53, + 3DF6629A4DD77B71A5F855CC, + 7334C493C3EC57C4AA200F01, + ED467279290C0AA942FB2B27, + E274BFB25D87D93EDBC23114, + 7763574CC15B89B5BD8A4307, + 4275F414173638509F56E09A, + 9C785342B462AEB3D63418F6, + F49BD909BB1DD4BE7B669FA6, + 450F0C2A16431DBBAE50520E, + CE3DF5A017336CABFDD6926A ); name = codecs; sourceTree = ""; }; + 21F527AEF9C266046A0A196E = { isa = PBXGroup; children = ( + FC19E4B3335185A35678B597, + 327D715A8B4C164B34398221 ); name = sampler; sourceTree = ""; }; + E9E9D81EA027C542C95D6294 = { isa = PBXGroup; children = ( + E10D88B71B2B0B8E403457CC, + A383EDCA7A04B91EAA0A044E, + 21F527AEF9C266046A0A196E, + B3C3985129CB310EECCBDFF7, + 405F91E957609744EB0FC5C8 ); name = "juce_audio_formats"; sourceTree = ""; }; + 105805580BAF2CEBE4D0DA33 = { isa = PBXGroup; children = ( + BBA5037F5ABAFDAB54EB6903, + 67B45F46192481A24287B06C, + B792478999FB8A13DCE4FF99, + 3710B4143BD286E576B66C15, + C7DAB2D405C907CDA83C2924, + 7323A374566B649091DB8837, + FE89A070890FF722F9A128C0, + E34B2BCD14634ED3BC9F5431, + 5AE8CCF926E311A0A7088E5B, + B16E1644785E869DC000112C, + 86DDC7DDD8BFE56FCA73E397, + 5EFF3A95523D36B3F1A057C1, + 814313374CD209A40282985E ); name = processors; sourceTree = ""; }; + 10F28FF3263B59E64AF73921 = { isa = PBXGroup; children = ( + 1C36F82D875B81C26A5752AF, + 350624CF3CD7DCA1E0313D3E, + 0655D6F5C85104403FC367AC, + 235894AFDA79AF1644B3A217 ); name = format; sourceTree = ""; }; + FD4542E6C91E7212198A0887 = { isa = PBXGroup; children = ( + FB73EE6CD424A7543EE172D0, + 8E7F5F80EB6D99EED152A465, + 9398049BFCAC42B8FD1E16C5, + 3F4889BE2D946E79745601A6, + A1D2256DD1E864A4560459F3, + 5DBE1359F502F9C72E38800B, + 89006BBD5040A06E6C559F16 ); name = "format_types"; sourceTree = ""; }; + AC7EF7E94559BBC511E03002 = { isa = PBXGroup; children = ( + C427F2763EEE1F1C11E8EAF9, + 451D484BE77922E33CA60DFE, + 72C3E3A3E2760E1ECB6BD30A, + BADAE0896F7D4AEAA481B257, + 2C516889F34A72150CDB6ADF, + AE2C0F932F7E54799FA0897C ); name = scanning; sourceTree = ""; }; + E0455F5194FF065007BE4B0B = { isa = PBXGroup; children = ( + 105805580BAF2CEBE4D0DA33, + 10F28FF3263B59E64AF73921, + FD4542E6C91E7212198A0887, + AC7EF7E94559BBC511E03002, + 904B316152B6C23112E0A0B1, + 768D628853DDE9E4EF563DE4 ); name = "juce_audio_processors"; sourceTree = ""; }; + 6AA0D6DFB981C9ECDFED4C40 = { isa = PBXGroup; children = ( + 6D16F5C591F5558984437145, + 47F1E35082ED332567F9C727, + 0D244B27274E1E7AB434C32B, + 38022D22AE783472BA32DF82, + D2F7081BE9A6E24BA7CD1A46, + 86A52913E895EFD9C4D43D04, + 1D3DA514A7B46A2A32A32060, + 6E00A6B4B754E3008B969B8A ); name = gui; sourceTree = ""; }; + 41225457F81F375E3C7BE9DD = { isa = PBXGroup; children = ( + 33F9348D753D148E82519067, + CCE2933FEB395826A5710C6F ); name = players; sourceTree = ""; }; + 810A00D2DFF4E5F57301390C = { isa = PBXGroup; children = ( + 6AA0D6DFB981C9ECDFED4C40, + 41225457F81F375E3C7BE9DD, + FAD925A5A262E8ACF4F40354, + FC87932ECFE90EB63664B6BE ); name = "juce_audio_utils"; sourceTree = ""; }; + 2EA2DD5FD46F5D789223B408 = { isa = PBXGroup; children = ( + 834DCAD1857B654514D4A0BD, + B65938BA2A3EE3FEE9923E12, + 3AEC36869846977B0C09A881, + 0BA047892DDF9066220EEDD2, + 4AC80644D0D73A0FF8656CAB, + C2AFCF5805D239DF9F9DE2D3, + 8391251872CF6C7C11F11EEC, + CE28146B186C11F00BCBBBBD, + 1007D3CD4E3D162CCE176520, + 8CB23F01604E12FD33256AC5, + 49C7D1146BE928E7FEF48A72, + 4EB13D757A756408053DBB79, + 34ADBF046976CA8A3932B5EF, + 8A79588D3BEDD0DF69065099, + 85D1779E60213BC6670E2C75, + E6B13A51A01032961340735D, + 89ABB9AFCDB73A409754BE48, + CE882EE8C05AC3A809E41332, + B6ECBC8983C8C13575A3420E ); name = text; sourceTree = ""; }; + 9E385EE2C33A34870884808C = { isa = PBXGroup; children = ( + 7B53B778BF20B1BC43E2D562, + 20D1EA31FD53A558EBD278B5, + 2666A5013948E2EAD29458C1, + C7835B9A7DA88BE84F1366E6, + A86557C09D01406BB6964DB6, + BC4827D57EDF30E1886FCEF4, + B6F619428216E8DD021C6ECD, + DB507A1F7BB7489344FF90A9 ); name = maths; sourceTree = ""; }; + 8FF03782352807A3E6E6F611 = { isa = PBXGroup; children = ( + D8AFC87A918360FFC9D96BE5, + 16A6895439607DD8E651BA87, + C1A15473893B354642F7531A, + D57651845D6D9438DEA62F98, + 737F8D074841EE88B24DC761, + C9E621CAC46AE272EFB807E3, + B1EF98E196E432165CEA08F7, + 48DCD395FA50217F557ECC2A, + 77488721DFFE4D0C22E19299, + 129BC61A6A0478DC45B5F8E1, + 4AF29A63EBF9E0693BF999C4, + 988A5D1934361EB3009CD52C ); name = memory; sourceTree = ""; }; + 35B88D644BE4CDE6A3A396DE = { isa = PBXGroup; children = ( + F84F19D5BEF7E7AE00C8CDD7, + D27A3A58DCC37B5EFC3AD745, + 6D0757D493441CFB9C1B426A, + 8939B318C3AF6793C72D8A9E, + CF15EC19906A7A7C3D9E2407, + 2302DFDF103BE152232EA767, + 10C0D0A587B834EA781EF5D5, + 102DDBEEEAD7EE71450C1EB9, + 78AB95E1E7C39B3794F44E24, + 47B161CB864B6C499DE64416, + 1139AACAD8CE6CD6E9A770B6, + 2590DCE65DE2323D9EF77214, + D9282DF6556197822D2BD5D4, + 3CFE82D0B21D705C8C6DFCF9, + BAF897CBD4F6F7382D4DC72A, + 6C956B90C1BB1217BF02F0D0, + 0A049E4E98CA579D41D98432, + 5D312C2C94366F88C7A7A708, + 9B5833CD741A705B8AFAF9C0, + 013DEB204CA02DFE8B745893 ); name = containers; sourceTree = ""; }; + 97091DE509793B81A0622449 = { isa = PBXGroup; children = ( + C20DAAC0E23CCCB8FF64DFED, + 51A580427D01D51811D5F1D0, + EC97B274D075920B2490E0D8, + C26D5CE23205932DA1062C85, + C766591C3E8CB978D6026F56, + CA5844E270055529F3F3818F, + 12B4120D10259DF8461D689F, + B91F3E65CE47056DAF5C4DA2, + 99FE46FBB05F16AFF37AB6A1, + 9A947B1B4163730D13A4D24C, + 8D66115C77E904AB96FDF64E, + A6073115FE5E1E635C78DDFE, + 19789C9C8EDD3CC9F37592C3, + B6B93A495D82478E99956AD7, + 6BD99638187A39ABC44DCBA0, + 070230F8B36CFD14E7EEAD71, + E48615F1F7D8213F6DC24FC9, + C2D1EE14670950990F0769B7, + 79441FABE26CE4CF9BA128CC, + 077C8710E1F237529330ED3B ); name = threads; sourceTree = ""; }; + 00E1F623EAD83AC9671516F8 = { isa = PBXGroup; children = ( + F1EEED4DC97678861086B282, + 30F6134D7A127DFE9D1ADA20, + 554399057C06249E6FAB9E20, + A26D0251E9EF4FAB12D1737B, + 98C6708DE85079E157822A2A, + F76944FF282DB2FB4FB1B229 ); name = time; sourceTree = ""; }; + 211CD90AA77DBE161D9DAA02 = { isa = PBXGroup; children = ( + F53E1E312FBE025F836AA718, + EE2DACF73E083928ABDDA63B, + 59A4C185020F908DEB4A844C, + 18E9157D37A11EDBDA35131A, + 58061ADC1867C814A334D49D, + 2954678FE7AB78F318FBD4F7, + 823A2690E2229E32DE984AD2, + 8A15EDB6321B758A3EEF635B, + 6DD58CBABB8009DAA5104BBC, + A16EC49106F4E28AD49EECC0, + 7E6AEB024827FD9ACB353BB6, + 2D529158434D415C56A07479, + 4EC68506861032FFD4B848DB ); name = files; sourceTree = ""; }; + C60D4C4FC42A554A46D46B83 = { isa = PBXGroup; children = ( + E26E3AC933F70B56B7B83EFA, + 2D93002DFF33B8BC3AD37520, + 7985BF3EF947A7955C94364C, + AF9F8BD7FAA0567B70EA397C, + 6A4819E134CD45BD043C3219, + F9FE574AC4D30AE44C0DF98C, + 5BC78223CF42F85D660DA536, + 608BEDD96B33E0475FF1FD54 ); name = network; sourceTree = ""; }; + 825131C75D8295428718D9AF = { isa = PBXGroup; children = ( + 936C6419223D7B28CE16A72B, + 32FBF4064072FEB06C6677C2, + C583836F43E174944C6098FC, + A8B2537E3AEB0F0B791CF030, + 3C97F910F4E20FC15DB607F0, + 2173828BA5C245AE8C598C6F, + 2C610D8010FF4A396101E2DD, + 8603713AFBC316218045A963, + 1DFE892B4249D1DA3549F13E, + 956A7825F42E2D33FC97CF73, + BC6C5A22BC49D1F16B797A02, + EACB4129861122ABC1A2BB37, + 2C80ACF1A94F47BA05FA687C, + 3D9E23A71CF1E3FB6D532753, + DE80C724F35B1464853FDE9E ); name = streams; sourceTree = ""; }; + 3F6A1A4FE9CE09F865C2F9EB = { isa = PBXGroup; children = ( + D25A334218A3D87F4D0BBD15, + 0574EFED0877A72D12A472E5, + C94D5056497677CC3FCB5AAD, + 393CDFCFA0358C689E5A3691 ); name = logging; sourceTree = ""; }; + E11D230996C7EA5090C8CF3B = { isa = PBXGroup; children = ( + 20C67AA68186D267436E7F39, + 6EF8660ACF82A6472884ABB6, + 1798F0BC1F2B2DF2F13193AB, + 8D3F5C48CD1B104A105845E9, + 62AAFFC7E5754AA715DCB1E5 ); name = system; sourceTree = ""; }; + 7950FD188ACB69BCCE4E592E = { isa = PBXGroup; children = ( + 72FF1B91B6590B036636E20B, + 39ED2CD3C8A17DF313A0838B, + 2D5379BEA988458161F6694A, + 20149C04068D071819A7BAFD ); name = xml; sourceTree = ""; }; + 356902978BF9F2910199BA96 = { isa = PBXGroup; children = ( + 30B5F2ABF28FD59FA7DA26E2, + A7F413D4C880363878469E5A ); name = json; sourceTree = ""; }; + 31679EC1083B0E93BD133F6D = { isa = PBXGroup; children = ( + 3786A46162305EA0B75F35E8, + C5CF3A35D0896F95596FAC4C, + 830186B50B369AD64C539EE1, + 47DAE660790C8E8CE96A63FB, + 419A5345B4F9B977B7C1FD2E, + AE860FA70A2F37F4A889A9EF ); name = zip; sourceTree = ""; }; + 29D30EC0005E4EA41AB30573 = { isa = PBXGroup; children = ( + 15B78E8E81D489F2711FDFBE, + 3E49B797A7DF7B2F596F330B ); name = "unit_tests"; sourceTree = ""; }; + FD57658D3C4937B68FC377C4 = { isa = PBXGroup; children = ( + 06D8EAABB6D94D55189361D0, + AB4A28A3667EA4C8393470A7, + 2820D74789660269902DB93A, + 549BE844954C5CD52D46FBD1, + 77845C048A123FF3D2619158 ); name = misc; sourceTree = ""; }; + DC206734AA07236B6CF2C486 = { isa = PBXGroup; children = ( + CFF27E108381EC6BA758EE7E, + AAABC8FBF364D9A596F4AA4E, + 0D2F4EE7A540CC2AAFD301E4, + A5A6819C57A0399C81E03301, + CEF96D559AAB6D61FB8A0288, + 82474A9673BE92E34D03FE39, + E48E2824CED9933934127522, + 7F580113B80A85759A406E81, + 353DB618823D6BC97E0986C1, + CA799D1FF79E811275318304, + B657CFA035D5285F14DE6AD3, + 9C0DB4F281D10303224E41A1, + 247646A6A435A3BDDEA602EE, + 641BCC559554D3C4B51A5B92, + B0461717A1A4204943AB55C3, + 9CD9B6E7197079625A165653, + 8B7490B27707118E03A50933, + 2597ED98D3C16A7EEF1FBFFD, + 4E6F438BDC119B89C9518531, + D8081154AA3072D2F2C4B625, + 1FD483D22D49AB7C716008DC, + DA2FCB30EE2A41085FF93B9B, + 03DA010C988E825AF3EFAE7A, + CEAE0C8168A4E71C6D607659, + 106B20CB3C94A1E72B19A7F7, + 8F1D89D1349B0DCC115B5D47 ); name = native; sourceTree = ""; }; + 4DC690DD63DDBC55E62125D7 = { isa = PBXGroup; children = ( + 2EA2DD5FD46F5D789223B408, + 9E385EE2C33A34870884808C, + 8FF03782352807A3E6E6F611, + 35B88D644BE4CDE6A3A396DE, + 97091DE509793B81A0622449, + 00E1F623EAD83AC9671516F8, + 211CD90AA77DBE161D9DAA02, + C60D4C4FC42A554A46D46B83, + 825131C75D8295428718D9AF, + 3F6A1A4FE9CE09F865C2F9EB, + E11D230996C7EA5090C8CF3B, + 7950FD188ACB69BCCE4E592E, + 356902978BF9F2910199BA96, + 31679EC1083B0E93BD133F6D, + 29D30EC0005E4EA41AB30573, + FD57658D3C4937B68FC377C4, + DC206734AA07236B6CF2C486, + A3346F6C215C2CEB5F9416FC, + 278FB432DCB9A4F9DBEB64DD ); name = "juce_core"; sourceTree = ""; }; + F70B6E2FF584AF141CA17BBE = { isa = PBXGroup; children = ( + 6181080398CF1388C5C15051, + 30B7393EE0006E9958AD82C3, + 2D9920BFC36E621CBDCE2381, + A93A4042E1214A65BD70DAEB, + FE87322C0C3E84720083F1C5, + DFF6BF0BB64714A494A25E93 ); name = encryption; sourceTree = ""; }; + D12B1750F63F258FD4B5CC6E = { isa = PBXGroup; children = ( + C07BEF22C24DD225C5D0940E, + DED6D04CFED991C5924B78F0, + C5FF20572B734C4EE8F204B6, + 840EF2C371FCC5690DA216F6 ); name = hashing; sourceTree = ""; }; + 22237417DF1FEB16A5FDCC96 = { isa = PBXGroup; children = ( + F70B6E2FF584AF141CA17BBE, + D12B1750F63F258FD4B5CC6E, + CCD6FA03199F37A9CCA6340D, + A974197873E277C3BA5DF666 ); name = "juce_cryptography"; sourceTree = ""; }; + A65902CD81957B294C593017 = { isa = PBXGroup; children = ( + 32B277F17C4052C6E4C70859, + 258AC1AA4F4459F9CF99944D, + 678034FB9D177C3D08044AB9, + C2E3B2EC0F1EB46349FBAF63 ); name = values; sourceTree = ""; }; + CE753C6AB61CCE0A7E574245 = { isa = PBXGroup; children = ( + 4D2697EB7DF6121A0037A399, + 137FD6DAC3FF840EBABD78E1, + C3F7B701463826A93DFE5587 ); name = undomanager; sourceTree = ""; }; + 172F56777A03BBB0ED14EAB3 = { isa = PBXGroup; children = ( + F123556B79ADA02F5E549727, + 1EA77055DF14613DD32065F3, + 24F057BF79A4723C521BBEE4, + 2E3C193C1C7AF236B10F01A6 ); name = "app_properties"; sourceTree = ""; }; + 43B31F713FF681531675E618 = { isa = PBXGroup; children = ( + A65902CD81957B294C593017, + CE753C6AB61CCE0A7E574245, + 172F56777A03BBB0ED14EAB3, + 51AFA9AA1B3094239580A0B6, + 0F77650615781AFD4374443B ); name = "juce_data_structures"; sourceTree = ""; }; + C12CEDFCB9C90CD0F767D7D0 = { isa = PBXGroup; children = ( + 22132E527A92309318A2D572, + E15F577E82B2E12597447472, + C66E08F5118F529FC623733E, + B6D34ED1DE5CC8010A1BE232, + 96C8D0EE75ABEB02422AA41F, + C4A730DEDDA33FA9A06CDA82, + 52CAE85DCE0FA2692B8A85C7, + 56CA808B4610A5C34730B4D2, + 55DDAA81843B00449145EA5A, + 6627248BD1D82CBA820F1FCF ); name = messages; sourceTree = ""; }; + EED6FE335B473510B17D26CE = { isa = PBXGroup; children = ( + ABDBA289C591093A65BD526B, + 973F391C41F2774E0CB8D54A, + AF26F1B432EF78EB76107FDA, + B59728841A18523C5950A51B ); name = timers; sourceTree = ""; }; + DA337AFA3100AEEA04703024 = { isa = PBXGroup; children = ( + F242ACDC3C1ED82039C45915, + 80E7D8D4E601BCC20054475E, + 0C4CA33345C6952BC8409D71, + AEA287A89324FB9D48370C33, + 59F616BB319A05A8E93B89FD, + A72FB74D13AA5C6A472E9E82, + ACB502AF25A235733295406E, + 6E365FC14CFBA3BD28196D3A, + 9D70FB5DE184C636EC01EC67 ); name = broadcasters; sourceTree = ""; }; + 106C22CF2DD971FCC2C2B45A = { isa = PBXGroup; children = ( + 79E54897373142A27EC0FC40, + 1BDF3CAE40B1FDD559BC3DD3, + 114E68D51824D42B0FFE9651, + 9AFD4A062067D5F709FA793C ); name = interprocess; sourceTree = ""; }; + 99E45617DBB30CEAE6F71DA5 = { isa = PBXGroup; children = ( + 98028D7823ADA4594A8A2A22, + B22D28FB41374E7092AEE96C, + 4604F166A3FC6187967E2053, + 22DA9E57AAA25391C7D1FBC6, + FFF09A9DCDFECD32F25F0CDF, + B62A2E9AE08575992BAE53C5, + A4BF6FE6902ACF80D2E3DB60, + ECEFF5A78873B5B388046E7A ); name = native; sourceTree = ""; }; + 069A030A72EF1BAF3C469E6C = { isa = PBXGroup; children = ( + C12CEDFCB9C90CD0F767D7D0, + EED6FE335B473510B17D26CE, + DA337AFA3100AEEA04703024, + 106C22CF2DD971FCC2C2B45A, + 99E45617DBB30CEAE6F71DA5, + 35FF3215D779C44F5B715702, + 3F273BE94572DB6E747B0793 ); name = "juce_events"; sourceTree = ""; }; + 6B073962B4485C2D4419DB53 = { isa = PBXGroup; children = ( + FE75937BEEFDA021D7767B59, + 08DC64993F213D275B988996, + 04184D8A7003E2E77ED66CFA, + 7D12F1C172F94A735E17ADD4, + 7415D37F43E9CA0C5D924D17, + CC0BC6AC42809A4F4FA21452, + 11B4C67851A83C42B8AC00C0, + E86CBC37B034041BFF5A10DB, + D0B9859FCC534C510C7F37A7 ); name = colour; sourceTree = ""; }; + A86D046BBA3A3F7575A24A75 = { isa = PBXGroup; children = ( + 3706A97B56FC6BFF72B700DF, + 508E1F2760E66BD1A73C235E, + 98D731CDF5B6F60ED9198CC7, + A6C2A4889A4E70DE735EBA4B, + 87EDA764A802069F89CEC355, + FABF3148A2F5D3ACD48E8838, + 385368D4C7693E8903E0C345 ); name = contexts; sourceTree = ""; }; + 24D8A81F218FDA69056FE3D2 = { isa = PBXGroup; children = ( + 07492D83B5CEED0F975EEF77, + 2D585CE2B407C9072D9A22C7, + 6BBE4F2809E2AE0FE445302C, + 24EF2357DEC8017E6EEC7F93, + BD84136646D8700D41BE7EA2, + B53B1A87D9A58B3E056B4D8E, + 664211B1C9D22E34B60EF5E6, + CF6533A53CCA75A2FAFACAB8 ); name = images; sourceTree = ""; }; + 08C024383E9C0EBA20B9B7FB = { isa = PBXGroup; children = ( + 6B03CB11D5DEABAEE7F9E0F1, + 2C2B87B06DED242E1C4FE878, + BE95C8978503BFA15B38D3C4 ); name = "image_formats"; sourceTree = ""; }; + A106FCB178451935674C6F15 = { isa = PBXGroup; children = ( + 27C340103177AB0848BCCC66, + E71C493A0E10D1AE4A3DB2AB, + 12EE1FB670B7894E873E9A57, + 21F1833EDC766935B1CBD2D5, + BA710A8F1D5B056162B7CB3E, + 73AC2ABA9094C062E8DA773E, + 105A6621F66CC8034DC59C9A, + 32F08660DB00B6BD5C905FE3, + 80EEC26431102B212C9F873B, + 3D01072645251F386FCE636B, + B6F0FA98AD1AA6A3552A59FE, + D4DC657E222FE2BDE92EC58E, + 33A84E7FDD64568649CC89BF, + 1089C7A1FF43033FDA63F711, + BF76B8C5007732311AF50543, + 38E0255E6BB9600DEECD39F8 ); name = geometry; sourceTree = ""; }; + BB4F117CD3A2EA9CE8390AD0 = { isa = PBXGroup; children = ( + DF47E8197FF5A9309C062C61, + 1375CAA34ECE0B3B292EEF0E, + C30EE4EFDB359E2A9D58F677, + 989587AD131FF27180BEB3D1 ); name = placement; sourceTree = ""; }; + 0FC4D9918A17F33EEF6831F1 = { isa = PBXGroup; children = ( + 39DADA0AAD7468C535ECD5A2, + 3A7C2EA6B6C8E00BBE6A29B1, + 36DD59799C3C4279B18DEAD3, + 1118BAEA98C38755FEB9E274, + DEE1FC30E2FBB97921616CA9, + 9C5F40CA5A70DD8207F53047, + D1CADE1C7E74F37D0D57575B, + C3E0EB7CDA04886FA8323C17, + FEA724E71E582903094A455F, + E9C3901F0B4AC410025D2086, + 2C3298EC4F4D0DA7A6C4291F, + 90F9E3FB8FF07BA924E42DC0 ); name = fonts; sourceTree = ""; }; + 401A2016A5C336D8F8813895 = { isa = PBXGroup; children = ( + 0B8D7873618440F42487EB7B, + 3EE0B72A06759B14B7FC6836, + 720BE81011A4F54822E7F498, + 12C5FC07F64317F5CF1063A3, + 9B07C7F9F91CDF9465EE2AEE ); name = effects; sourceTree = ""; }; + AE4D88D94AF6F0F06DE97BB6 = { isa = PBXGroup; children = ( + 4F2F636FB9416BFBB1FF2473, + 373EBC4E488B3EF8A0A72CAF, + 6C608B44E265F761D09C91CB, + 61D55BA26F1410A26A007514, + 8EB9B4853F225BDB97D6626E, + 8154D2D681E028B8783E5331, + 0BBEDD3E8C0C2B7C4B52016A, + 2649F70294DB168919CBCAD3, + 5712EB90A8B51DBBC4E19A39, + 6704DC3810D991DADFF947AC, + DFEAB699C98B89FF0B85F557, + 5CABE190EBD0F4EEB763114A ); name = native; sourceTree = ""; }; + 980520A52BB3BF76E45AECA8 = { isa = PBXGroup; children = ( + 6B073962B4485C2D4419DB53, + A86D046BBA3A3F7575A24A75, + 24D8A81F218FDA69056FE3D2, + 08C024383E9C0EBA20B9B7FB, + A106FCB178451935674C6F15, + BB4F117CD3A2EA9CE8390AD0, + 0FC4D9918A17F33EEF6831F1, + 401A2016A5C336D8F8813895, + AE4D88D94AF6F0F06DE97BB6, + B523ED8502475B9BB3F392C7, + BF59C96BC3BCB29CCB421861 ); name = "juce_graphics"; sourceTree = ""; }; + 754D5C51D503AEDC94BCDDFC = { isa = PBXGroup; children = ( + A9B72D6049A3539B63AE79D5, + 79078F37EB6919AA440017FC, + C9AEAD8B2366F9508E63A178, + BF6F272194D16055D6A90D94, + 7C1A682DC90937487D6A4B0A, + 6314AFE1A17F085C028B4C82, + BAEAC53813F354CE5E045E9F, + 7BB9913643FCE12B216AD8C8, + BE4673AB9542C19D1C1C3A63 ); name = components; sourceTree = ""; }; + 75FA4FA813EAB3BA61D0FC37 = { isa = PBXGroup; children = ( + 30416A5D76A365DDC434987E, + A57A09A4137135A0AF6A0800, + 3090FB05992F02292F415E33, + 467EAE3A087BEF2C56EE3FF7, + 4242718AFF89762AA5CEC247, + 78C4635C8F91A9A513C6B9DA, + EA1313A79BF10BE60238F3D5, + CCFBB22AC379DC3B3A839CA1, + D27D41D4A06E286FDBDF7549, + 61B4084F81D01C8730F5952F, + 74C5EA2191F9A05902D76BB3, + A9958339328213FF76D8A79C, + BA8CA56A4E1F30984B8E4208, + EDDDD60231231B8221711145, + 6E0DA76710F31FA13F5168B3, + A18C61D2206141C03B24BF9B, + E963816786695359C91EF35D ); name = mouse; sourceTree = ""; }; + FDFB0903CA0E73107353483F = { isa = PBXGroup; children = ( + 1FC2BD9784C0FCB1D259C006, + 11545F94DD1628DE57CB7768, + 03E820FAB7405937F26D6EF2, + 8B0B9E8A37911F76577E3AA8, + 18666AEC1FCCE5D1514EB1FD, + 7FC1A0B1663AC9262104D715, + CD2AEFC254C92A49F2D5DA64, + 05F2CE704CA3BC807CC5E19A, + 08B1356929EB57FE6FCE238F, + E8FE41E21AD1029DD709FD7C, + 726A4629ED6E091D24471CA8, + 95305C4003CD4784CA20D1D1, + FC1201FBE79AED3FC831ABAF ); name = keyboard; sourceTree = ""; }; + 14C6A919ACDD67A04594931C = { isa = PBXGroup; children = ( + 3A9AB41831037CF68FF5719F, + CCB4250C97008BF3E5F12D0B, + 60704E9013507A9F9729017D, + B5B987C3029862AC58363F1A, + 897420C9C4D80F1AE5F80637, + 7BB52DAA6A783F0194EEF869, + B418FE6F1E2F268880AE00A8, + 4F854124B48F6358A992D164, + 3FA49B24986D1DA7CFA612ED, + 893D867B3AB93E4D96AF060E, + 5CE14F63495533AEDBD1688B, + E5DC4602843749A071B17576, + CB68DC2B2EA837D6869AAACD, + 171777847EB6194910E9CFEC, + 34E9DFB552CA9B8FEF8DEF1D, + 98EB4070281520EADE02212C, + A34C1EFF7C51BEB33C22FAFA, + 3543594CCB08E22D1EA8D2C7, + F534B4A3A4E46A8311A44649, + CFB2E2DFBCBAA9BF91E7CB35, + 10152F168CB3E2039DF18EA8, + 0EA9280C282850BAB49C1696, + A80CC48B8215D447643CA411, + 3839556028D5A749F48340FE, + 5CE4B86B0FCE258A8A12AB09, + 4E8A36ACA8A867C7511B280A, + DEA38275A65473112CD34252 ); name = widgets; sourceTree = ""; }; + F6D3F46A7453FE306581C066 = { isa = PBXGroup; children = ( + 014740E7C97145AFAD9BD60C, + 0388C01D765585853A700C6A, + 96DDB84D9722732A64DA57A2, + B428CC689CD359B29C67272B, + 5435804E495A87442FD7A6F0, + 3421ADCAF375264A71E5AF07, + 22A86C5C4967A5844323F7BA, + D33142A214D7AC7A8ED27E4A, + A2BBD7D58010E488BE904CCC, + B59DA3ED4F12C1FFEE433EE3, + 63DD8F6DD0DDC9A6F45E0C90, + 119712DC26D0E95E209E85BB, + DF3B7E1BC0AF0C826C47745B, + 35F42453CF2745BD254BC71E, + FAC8B4FB05C57F3461E3FE30, + EC93857F367028441A067F45, + 9AB36BCC26D5CC2CCC71E5E4, + 4DE313B7586BAFF5E9BB0506, + 924667AB0E27AC2CE1EB7828 ); name = windows; sourceTree = ""; }; + 9AE0D12907BC79E230FC6920 = { isa = PBXGroup; children = ( + 56D3242C281C2F19A2A6E81B, + 66425E2428080B75F0FFB2C4, + 52FD39B0A762C353D2FB09BC, + CE66BAB575B13375E1EE937C, + 3CF7FB16E7DFE7EC2636A45D, + 3507A95E429F11E5549286CB ); name = menus; sourceTree = ""; }; + 63EF7163E3CE53A8167FD628 = { isa = PBXGroup; children = ( + F664E58A0B3899FB98CF8E1C, + 4EC77B02BE7457DE877E332B, + 23189A59169BC89E95A4A496, + D7E6E92AA32B7D51489FD256, + 61C6FB83D4582BF2F84EB464, + 825BDA58C2694CE7F3FC2494, + 422D4D8EE3470F57D56064AA, + CF2A1897A3C5610A282A2713, + 108D97ACAEDE5A8DF0A483B7, + 3B32FA1EF99322D3DED5F162, + E453E312D607E60FAA6D1BF0, + 6B0F3AF3FE7B113C33112897, + 7F2A4EF4DE29CE775FF0F5E5, + D602AE751C3C12A6458FCCD5, + 052964DDB569D0D8C38B89FA, + 9C7B5E573807ED59065B54DA, + AC2D4E1081F69B20AAB47E2F, + BCEAC6346AB15421E3A5AB70, + F48AE8E1A9A1608BEB4C16A9, + 9B572F52342BE9169D435F1C, + 2B3A770317B04AAF24C28EF5, + CD9EDF2EE190AFB02CCC3F49, + DD40A3E06CA320D95F3924BA, + FD36FD1612A96DDE000211E0, + 65A50CC38E2A045D320D4224, + 32FF688C9F64E07EA3917682, + 74D36012BEBC6FDD72B0572F, + AF5FD9E66E46B600914FFE53, + C4C6D6B8731B400B29A3A4E7, + 0EC1E7F1AE41C81E1EA23B2E, + 1A9EC07147DD48C0D68BF304, + 7EF1F0BC4F4DE2986856DE41 ); name = layout; sourceTree = ""; }; + D5D3EABCD52C4657BAA44568 = { isa = PBXGroup; children = ( + 43D8FB16F1DE9F159C7A2F71, + B1C64086587109AA429DE418, + 4D050E552CC0A82297D0AC86, + 7DA4BF4F615254D8AFD37BEE, + 9E80EC17EE6322C452E9A774, + E38DE271B32DCC95E52C72DA, + BDC0E815578ED04901FB9251, + DE7617FB215CD22983E7D736, + C7EBDC32959BE4405ECE2148, + 195326647ACE1A61018358BC, + 927B5B18A655057D57C37D35, + E6C582E67DC0C4D0CCA18166, + E3FC888CC9FAD650C469ACC5, + 2ACD67859FBC33EB743708CB, + 1A642D2FFD6CB47C8634337B, + 0E0F146C817BAD44A024ECC7, + 99B22FB30FB36F358A932F6A, + 67F14D1D1869540E4B9540B5 ); name = buttons; sourceTree = ""; }; + F9F59A6E27133C09D32DD9A2 = { isa = PBXGroup; children = ( + A588C458AC395D8AC09A433D, + 50A201CF006DD19F648C429D, + 99971599D48BFF60437E0F44, + 731FFEA1471A03D05AED1B77, + FF93CCEC386B165840328831, + 12DD0DF90EEEBCE88873C8B1, + D33EBA9793C56D73135BD1F0, + BB94B67B5B0EC06015621F59, + 09768BD4CFA73C85F8353F3A, + 63CF475000C8419AE8D25BD2, + 53A5227FBB8C0DD8F4442599, + 2A835EF38887CAB750B49AC6, + 06574539E17A8703E442F691, + 725D10330456FC57C9FEA75D ); name = positioning; sourceTree = ""; }; + B59BB676733E03D09CEEC9A7 = { isa = PBXGroup; children = ( + C50F17EA37434C3C7B52C3BD, + 503F07193B665711417DF1FC, + BD1E818B710742D5EC07BAE8, + 47BD3D6D5AC81F74179942FA, + CC1307C0AEE134EEA46F68EA, + 122C499E8D63BC4F91ACC7B6, + 2708E4F2F73D88F73D8E54D0, + 35089DB1D126566F2B5DD724, + 12B479E0CD2AAE105820B20D, + 156E421F5B0D6CAD8D415F53, + 5996F037CD5993251871573E, + AA0DE5CA2B089393B110FD25, + 687E1D120E47EEFEEB73A4BF, + 26B73C77D47B146F92BEA265, + 431B8B4CCA364880B507DD4E ); name = drawables; sourceTree = ""; }; + 50A2C093F5AE2410908018DA = { isa = PBXGroup; children = ( + 4CE8628F7CAB483AFAFA01FD, + E2732267CD7C0C3BDB17456A, + F796E49F8209912C1E8E0ADC, + 49FED6A86A4F78CDB60CBC99, + 709D153E2940C162215E31F7, + 462F0D225347C4FDB943324C, + 591E3F5832C08B0841971B01, + 31C1E172911A4C726A85EA02, + 2D6DAE85F0A729F1FF761DC7, + 34BEABBC39678C06EA3BB307, + 63A3A467F124B67D19587D4F, + 36EFC492079F0B7F4A1CB099, + F6AE140F7CE1B08B52A8C8AF, + 03AB3157D77979CDD2601A86 ); name = properties; sourceTree = ""; }; + E4A2262D5F17C9E13403F764 = { isa = PBXGroup; children = ( + 2F7FE4AA919A66D5EFF65A86, + 329BD0A0243005D36A444135 ); name = lookandfeel; sourceTree = ""; }; + D529A26C2B113F5DC6DD3571 = { isa = PBXGroup; children = ( + 5725CB557A7D55CA59E18324, + EC180AD91D1B068D7A8F33BB, + 348002712045A8515DB393E4, + FBDA70B8FF6C6D669F9CF540, + 66E3497A9DCF883BCE6A27A8, + C8E9F901721D86767BD458B3, + 89F519023C03C9908F761BAE, + F6D1D5FD437BF40AC208AA2E, + ECCEB7E5D6B18F1376E34EDC, + 574BCE46C31D810F694B0651, + BD7E3C305F0976D5C5395090, + 1A9B80E0518B9AA9C34D5804, + EB9E8921A8D36EDD7FF3245B, + 1D0DD674EEEF98B1E1B8D8D8, + 0C7631EB40FF52D74D3D0A8D, + 86DF811859C602F24589AC3D, + C069C5FCE1539E9F85C7F29E, + 59591325C73706DB6BD2C887, + 98DD360F5D3D60539185DE90, + CAF961A7AFDB2830B419214C, + DF2D86EEA8031481C1FD08B2, + 5010D82E6ED57F014D8E88E3, + F26F7C7D6D9EBA2693914AA1, + C03AF9257B94504D7270416A, + 6CC2241F234EDD873FD5BDC7, + F4C50E1A3DC066396613C401 ); name = filebrowser; sourceTree = ""; }; + 7BF561FBBF76BCAD37304ED8 = { isa = PBXGroup; children = ( + 3FCF8E2901F23E806122E4AA, + 747D307A1A0D468103D4B20E, + 5D7DE60BB4DF4CE300B4F343, + 43A4661DD876DBD6A6E1F5C7, + C0608375ACE89B422431E9A9, + 0782BB99E1CCE0474B695C7D, + EB902A37F3AA5BC62D523F5B, + 20E63E36AE128883F4144BC3, + 3121916B396AFD0027FF1926 ); name = commands; sourceTree = ""; }; + 78AB3C7F8B92CBD9F21EDD39 = { isa = PBXGroup; children = ( + 9D18794763C086784ECE98D6, + AAC98CB517D934F42A25416E, + A1A96650D3211A87738A9B75, + 3ADBF520293DBBCE5A605902 ); name = misc; sourceTree = ""; }; + 44C5E35F6404D0D81E2F93BF = { isa = PBXGroup; children = ( + A58203002289D424A2CDF5DD, + 3B583D35FAD0DE89F00F17C0, + 18D1181C39F5A59423AC7A3E ); name = application; sourceTree = ""; }; + 0741D0D65503C2C4BB227EC8 = { isa = PBXGroup; children = ( + A9566A42230AACC1AFDC6C5F, + 1B3C2797B04E0FC6699DFDF0, + 6BBB8746C2C1BB5F3C3F1FC2, + 9F35ACC90F2A1C2E565148C8, + 7667028F4EC27060934DCF30, + FEB2CCC12BBABEEC23384FDD, + 3D8ED4E2F2DFEBA891A4BD7B, + DA0D464BE6E90C3668AD7C73, + 4871179A9D7239EDE34B33BE, + F8FB27C3434BB255CED42861, + D3AD73A360B24493ECC4E092, + 5ACCDDBA02C73CE15D6532E9, + 22CD1BF5E83A216A0D18260D, + 62AFEF7525003814092C79FA, + 3E11497CB4E6589C8A10E740, + 52D9F5FD82C858FE4F134773 ); name = native; sourceTree = ""; }; + ADFD648375272A1E67B3CB5B = { isa = PBXGroup; children = ( + 754D5C51D503AEDC94BCDDFC, + 75FA4FA813EAB3BA61D0FC37, + FDFB0903CA0E73107353483F, + 14C6A919ACDD67A04594931C, + F6D3F46A7453FE306581C066, + 9AE0D12907BC79E230FC6920, + 63EF7163E3CE53A8167FD628, + D5D3EABCD52C4657BAA44568, + F9F59A6E27133C09D32DD9A2, + B59BB676733E03D09CEEC9A7, + 50A2C093F5AE2410908018DA, + E4A2262D5F17C9E13403F764, + D529A26C2B113F5DC6DD3571, + 7BF561FBBF76BCAD37304ED8, + 78AB3C7F8B92CBD9F21EDD39, + 44C5E35F6404D0D81E2F93BF, + 0741D0D65503C2C4BB227EC8, + 760B6B73C7C332980801C0C7, + B875CBC2CBA6D01EE0AAB25C ); name = "juce_gui_basics"; sourceTree = ""; }; + 0738039F7E5D430630032154 = { isa = PBXGroup; children = ( + 5092F31788400A172E319CCB, + 15DD1FC7780F48C6DFF56321, + C3A77F115D67C0E24C65FC45, + 441F40BFFD11D433F2FED531, + 282C1DA3A161FEF2AD6F94A6, + F84DBFF75F5334EA86AB2E37, + 618F07B344089C7B13EED411 ); name = "code_editor"; sourceTree = ""; }; + 640482925394FB311FDAB984 = { isa = PBXGroup; children = ( + D6C9614D1C6493DBEE370646, + 82AD87FA68D9DDD78F9A4674 ); name = documents; sourceTree = ""; }; + 1E1530112868032A2C02F4A4 = { isa = PBXGroup; children = ( + 2E7A4C5E41B3BEBC444B5935, + 1E868017015269856168EBA1, + D226630AEE6B273B6B1ED622 ); name = embedding; sourceTree = ""; }; + AD533544879D32FDC9647970 = { isa = PBXGroup; children = ( + 8042D0D2B38EBD19652CBA55, + 896140063D12A19D1DCBF3DF ); name = lookandfeel; sourceTree = ""; }; + E2081DA359B95C05D825E9DB = { isa = PBXGroup; children = ( + 1CCB7B18759F7CEBB065C31E, + 0E74D38CAF5F8C914132F4D5, + 61941C6E24D2D04F51F59134, + 2CED94801F5481AE15648BF9, + BF2093D486040BEC64210EBB, + 9AB8510F26D6035159042BC2, + 74390F0BB6A54198B7EE12CE, + 8E6E18125D1046B97EF7AEE2, + B2F5CA0FBCECC10EEEAD11E9, + 2FD23F0C1CE490858228180E, + 33E3113EE5BF74F269FAD5EB, + 14105A8032081F6FC44F7F0B, + C2692BB8791ADE59158D9F21, + 61E83A490FBB38A8D7613146, + 476F1E00A832948D22B468C1, + 9D042E1CAB03CFCD4B937951 ); name = misc; sourceTree = ""; }; + 6478E04ACFBEA2CBBBE97006 = { isa = PBXGroup; children = ( + 3D5DB29BE2D59A93B5516273, + 2E02355C7790F4B6EA0CC56E, + DF590CD70352A30FA3BD9835, + 3CFD018C7CC9E7B8E1E6232D, + 99AAA16209763F3DA2113D1B, + CF0DB23C5950CB619CF8D812, + ABBA4018C1596481E7CD51CD, + 147A045E381AE58EC0C54984, + 8CA151FDAFC858B6535BF6A3, + 3342B88619BAEFF4C41078FD, + 93C594ECD5CEA7878114149A ); name = native; sourceTree = ""; }; + FC8FF0152858F140DEB1622C = { isa = PBXGroup; children = ( + 0738039F7E5D430630032154, + 640482925394FB311FDAB984, + 1E1530112868032A2C02F4A4, + AD533544879D32FDC9647970, + E2081DA359B95C05D825E9DB, + 6478E04ACFBEA2CBBBE97006, + 5E12C726C5DBB9C81963FAB5, + A97EC32975392744C62684F9 ); name = "juce_gui_extra"; sourceTree = ""; }; + EB8917291F41B7345B13B53E = { isa = PBXGroup; children = ( + D866C4735BF1EF0CA24FC1FB, + 87FB016388B49E97FCCBE69B, + 4F802BD98072EA49F7F4FE4A, + D6D0F076F54C7D669A9717C9, + 5786364EC4C531CDE41BDCEA, + 8878426C7F58CB22969E7133, + AC3EFDDC80761A45E8BE0624, + 43E4604C39E9A992216F6B98, + 295A470694011EBCA802822B, + A7B3B265DACC82D9E9CFB3DA, + D7239D5B984E07808E2DB28C, + D2C40CDF46D894BFC72BDC56, + E46977801F19277F4D3B324B, + 17422D876DAAF091ED089B8D, + B81FA2ED22BCC03D124031ED, + 58864C3D7F369EBE01E42C5C, + 8EEB4DEB11F3DF01BA6F7528, + FE9A5898294228EB7F439951, + 4CFB262AA9778621B8B33A7D, + EC89003BF30329181BB3EA4B, + D2F161366612A4CDA6372113 ); name = opengl; sourceTree = ""; }; + C92FEA88254DAAE793DB3CF7 = { isa = PBXGroup; children = ( + 22C2C932398DC1EFE0880A9A, + ED9FAEA9116C568942BAD000, + 6E1CFF5227B2F2E200DD9EC7, + AE394742FA0F2C6AA39906DD, + 7E6041874E267458572B93A1, + 8565630D87FEE505D50CE2EF, + D66048AF1E05FF836B2A813A ); name = native; sourceTree = ""; }; + 7CFCB9A92FB574419734C1F5 = { isa = PBXGroup; children = ( + EB8917291F41B7345B13B53E, + C92FEA88254DAAE793DB3CF7, + 53B187F6CFBDE72F4CEFE845, + 2184D5F7212394F4BC1C3B45 ); name = "juce_opengl"; sourceTree = ""; }; + 269792C267D2F1CB065C91CF = { isa = PBXGroup; children = ( + 2968B26144E09D6A6659E739, + 607083E28D3CAAC3C69D3010 ); name = playback; sourceTree = ""; }; + A76B071B010FC4CF03DFE5C0 = { isa = PBXGroup; children = ( + F93E02181A90B71B0C16629F ); name = capture; sourceTree = ""; }; + 0F1BFB71EE708138D6BAE774 = { isa = PBXGroup; children = ( + 49AD4268C6B2CF4E12806E56, + F28314027C0D8E36A9FE43E3, + 1580FF065A04106DBBA8F475, + 6DF10AFB26794D47F3AC783B, + 4ADF2B4274758FA3F435D6DB, + 7D01B73D4ECD4899173EE882 ); name = native; sourceTree = ""; }; + A23C0116EA7422F7F759BFEF = { isa = PBXGroup; children = ( + 269792C267D2F1CB065C91CF, + A76B071B010FC4CF03DFE5C0, + 0F1BFB71EE708138D6BAE774, + 47C2B600A45FAC095669304F, + 7B0C40F57724D3021F83F423 ); name = "juce_video"; sourceTree = ""; }; + E9CE0CCE2CE829712D4E41BD = { isa = PBXGroup; children = ( + 0596B4096DD627F972BB026F, + 21689DE0A3F6A8E3550F027F, + E9E9D81EA027C542C95D6294, + E0455F5194FF065007BE4B0B, + 810A00D2DFF4E5F57301390C, + 4DC690DD63DDBC55E62125D7, + 22237417DF1FEB16A5FDCC96, + 43B31F713FF681531675E618, + 069A030A72EF1BAF3C469E6C, + 980520A52BB3BF76E45AECA8, + ADFD648375272A1E67B3CB5B, + FC8FF0152858F140DEB1622C, + 7CFCB9A92FB574419734C1F5, + A23C0116EA7422F7F759BFEF ); name = "Juce Modules"; sourceTree = ""; }; + 267F5230CADEEAB9CA475C2F = { isa = PBXGroup; children = ( + 4EB06BB3A534C3865CD7A8B8, + 579D22DA6ECC930E19B7104A, + 4E0A38A8008E55C09BFBA199, + 33DAC2BB94AFCF8EB33A1417, + 7C7834D5AB7E6656A4CECF2F, + EADE149294A3A3509EC61E6B, + 0FCE8CD83D0FA98563EE2920, + 278099898E32942D72AB635A, + 868D4BEF6B94EB7BF659CF01, + 4FC0DDA3086EE26242655E66, + 766F3BD777CA786CD6BE023E, + 890F3D7DA5BC01DACF8E5431, + 575587359A2F65312CE97AC4, + 4CE1249813E63913B15BB51E, + C2072DE0D1FF6AA90A700D25, + 9AE7533B1AD68245E130B3AC, + 49DA3670A8CF79F133914D18, + 42B89D48E9FB252F1BC3796A ); name = "Juce Library Code"; sourceTree = ""; }; + 539DF80B9269EFCA8BF42818 = { isa = PBXGroup; children = ( + 148C8FE6639F6CDF0E92235D, + 16793951B75EADE5C08FD129 ); name = Resources; sourceTree = ""; }; + 0AE68D12A51E59B084E046C1 = { isa = PBXGroup; children = ( + DEB23C98FEC261260F63B6A4, + EE3E9902579904E57D1A5A18, + D45EF873A4BD7D0E56274D79, + 3E51C5F35FB095AF4F0E373F, + 6FCC44A5DB0B881454AAD300, + 2425625EE014356B5980B238, + 70350B2642B3D062D0A8D239, + 72421270611D3B09781CA634 ); name = Frameworks; sourceTree = ""; }; + 913372FE9DAAA74F5520A786 = { isa = PBXGroup; children = ( + D119A3871626EC2B8EFCB0D4 ); name = Products; sourceTree = ""; }; + 197E966E1B8F9DE1A6F9F0D4 = { isa = PBXGroup; children = ( + DC7F5A47CBDE7E3A9AA86F85, + E9CE0CCE2CE829712D4E41BD, + 267F5230CADEEAB9CA475C2F, + 539DF80B9269EFCA8BF42818, + 0AE68D12A51E59B084E046C1, + 913372FE9DAAA74F5520A786 ); name = Source; sourceTree = ""; }; + 2FE1E46B92ED7BD427F01D8C = { isa = XCBuildConfiguration; buildSettings = { + HEADER_SEARCH_PATHS = "../../JuceLibraryCode $(inherited)"; GCC_OPTIMIZATION_LEVEL = 0; INFOPLIST_FILE = Info.plist; INSTALL_PATH = "$(HOME)/Applications"; + GCC_VERSION = com.apple.compilers.llvm.clang.1_0; + CLANG_CXX_LANGUAGE_STANDARD = "c++0x"; ONLY_ACTIVE_ARCH = YES; COPY_PHASE_STRIP = NO; GCC_DYNAMIC_NO_PIC = NO; - GCC_ENABLE_FIX_AND_CONTINUE = NO; GCC_PREPROCESSOR_DEFINITIONS = ( "_DEBUG=1", "DEBUG=1", "JUCE_ObjCExtraSuffix=JSLvvV6j", "JUCE_UNIT_TESTS=1", "JUCER_XCODE_IPHONE_5BC26AE3=1"); }; name = Debug; }; - 8EF7C7FFD55219581A5075F3 = { isa = XCBuildConfiguration; buildSettings = { + 9E3B64077ABD2AA72A51EE7C = { isa = XCBuildConfiguration; buildSettings = { ARCHS = "$(ARCHS_STANDARD_32_BIT)"; - PREBINDING = NO; - HEADER_SEARCH_PATHS = " $(inherited)"; + HEADER_SEARCH_PATHS = "../../JuceLibraryCode $(inherited)"; GCC_OPTIMIZATION_LEVEL = s; INFOPLIST_FILE = Info.plist; INSTALL_PATH = "$(HOME)/Applications"; + GCC_VERSION = com.apple.compilers.llvm.clang.1_0; + CLANG_CXX_LANGUAGE_STANDARD = "c++0x"; GCC_GENERATE_DEBUGGING_SYMBOLS = NO; GCC_SYMBOLS_PRIVATE_EXTERN = YES; GCC_PREPROCESSOR_DEFINITIONS = ( @@ -197,7 +2025,7 @@ "JUCE_ObjCExtraSuffix=JSLvvV6j", "JUCE_UNIT_TESTS=1", "JUCER_XCODE_IPHONE_5BC26AE3=1"); }; name = Release; }; - 7FA986B99AFC795723E00AB0 = { isa = XCBuildConfiguration; buildSettings = { + 7F619F19FB1204B9E5AA1421 = { isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; GCC_C_LANGUAGE_STANDARD = c99; GCC_WARN_ABOUT_RETURN_TYPE = YES; @@ -215,7 +2043,7 @@ ZERO_LINK = NO; DEBUG_INFORMATION_FORMAT = "dwarf"; PRODUCT_NAME = "JuceDemo"; }; name = Debug; }; - 623F392572A48BDD48CE1CC4 = { isa = XCBuildConfiguration; buildSettings = { + E713D5D6C98E4FFEF301FC0C = { isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; GCC_C_LANGUAGE_STANDARD = c99; GCC_WARN_ABOUT_RETURN_TYPE = YES; @@ -233,55 +2061,66 @@ ZERO_LINK = NO; DEBUG_INFORMATION_FORMAT = "dwarf"; PRODUCT_NAME = "JuceDemo"; }; name = Release; }; - 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 = ( - C0A3C433D146C7E1FFCADFB2 ); runOnlyForDeploymentPostprocessing = 0; }; - 7A3A0C722E5F96990CA1B5F2 = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 78A66C2F9A9E2E6D011D8E5E, - CE5C46E66485B7D77B5ADB4E, - 2E2DB52D03DD6A56FAC937A4, - 8E0E3B718F35E9E1DC3D89C5, - C4C49D2D5D27730E55B27BCB, - 2CD67851BCF3F24E0B5F82CF, - 29C9F0E2824F63B105234C0A, - 7EFB4E7D738BFFF90F49E0C0, - B69F5957B1729915BFB18735, - F920A5AB6D0FF01022575079, - 940BE0338CC1FEB65B4B82E2, - A3AF0F559DD97F1B908AC1CA, - 2C0AB902CB01E38D87A2A6A5, - ACD2210FDE1137548F995F85, - 2F6BFF7DD839160223057CF7, - 1552CF5A0A932C5EB88EC56C, - 969C49FA8B55C700ED848494, - AE1CB65D73BFB3FA707B59FF, - 99D9F5D6FC8A015C603B32C3, - 563DEC7941B88163A50E0945, - F5691895ACDC7B12DE88EFF4, - 4D5C0ED42C87FBE02A9C7BE6, - 80926D2B83ACF680958111EC, - 2201A04DDCFC361882F8EA62, - 2E98B1DEA8B7FC20ACCD2E6D, - 3A2EC17F8472C338D6A26278, - 36B5D100604D9A300187B773 ); runOnlyForDeploymentPostprocessing = 0; }; - 2E5F3CCB074AC0B18683A4F3 = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 36AEC0EAE7AB9D061AD9EFEF, - 7938A4501BDD574C4121B988, - 8223C2805B1A9ECA27926EB5, - 3BE296F09A47C0ECE4D91CF5, - 268F2BF480CF9844E2F2B974, - F1BAE9DCD179C8784FF28F8D, - 1DF18F6B9CCFF7BD07C36AC2 ); 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.1"; hasScannedForEncodings = 0; mainGroup = 1609BCDD8EC2BA2A162B68F3; projectDirPath = ""; projectRoot = ""; targets = ( F26B86DEACDEE5DFB60E10B1 ); }; + C01737B8733CB01B27C1DF59 = { isa = XCConfigurationList; buildConfigurations = ( + 7F619F19FB1204B9E5AA1421, + E713D5D6C98E4FFEF301FC0C ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Debug; }; + 4EBA6A51E838E294DDFC57F8 = { isa = XCConfigurationList; buildConfigurations = ( + 2FE1E46B92ED7BD427F01D8C, + 9E3B64077ABD2AA72A51EE7C ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Debug; }; + 2E115993E9743E9E60D96434 = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( + 933C39A0A20A89B767742D07 ); runOnlyForDeploymentPostprocessing = 0; }; + 8478974C956501F4EA996448 = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( + F7DF6AC4276AD42F4F360E37, + B99620051F4C5A2FAB1DE49C, + 49FBA0236A1917CEF50FC456, + F5B4E1CC211F5215D6E05B44, + 6D221136E94E784E793B9CD5, + B43C4A8F569137053CCEAD76, + 127ED5764EA5A3BF3CEA5BBD, + C4FCFE5612A1ED999FB9D51D, + B2A1C85517169CCEBB79CB9F, + 196F67D37488DD92EF434694, + BF03F7C64A1FA6A2E15A9780, + 4CA7D59ACB03776D785FEB12, + 7DFFCAD7929BE7BA645C65ED, + BCFD0CA15F13967BF82B26A4, + C33DAAC97DACAEE978D635F0, + 4FEDD45FE6A26543E055F259, + F600FD434B52D887C1FB973D, + 0C993072AF2728D62BF28094, + 1D0E1EAD88C7EF8CBB16E841, + 85EB509411E79E3F970C9653, + C24BF8E3142DBFD0139EFEE9, + BEBB1C4BA92F6D4CDE224A15, + 662202A6B86B11E3DBD96D58, + B00C72D607AF2A98366B40DE, + 8938D948E7A216EE7264F500, + BA3DAB221F557B4C346EAFCF, + 26973D9739CE05EF7F41C687, + 020A3C34BE41F0B9B4AC7A64, + 845872D67C4313E91DCD3A8E, + 6488F374D2A9B9FEDAC40859, + F72A0043671FED94178413A1, + B639B9459CB9EBE2A00A37F3, + A9BC6DEA9311B5C74977A95E, + 3FCA7FE72D0EF062CB350F88, + 574104B02E5C0BFCCDA099B1, + BF1DE7C7A64706C9FBD7284E, + 4A61E54E2ADD5FBBB1486257 ); runOnlyForDeploymentPostprocessing = 0; }; + 8C6D93B7CB9CCF8025AA68EB = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + 0BCC52797AD97E09EA6DF0E4, + 874D7495FAC2F4537D6AA989, + F544EDBF5507628552174493, + A2DE43FDC367184A8239D7B2, + 74CCB5B6EA1B00750D1831DA, + B2E59607B91E74E94565E022, + 87EDE18A8381271AE00E982D, + 44198BB3EF9EB0F469BA45E7 ); runOnlyForDeploymentPostprocessing = 0; }; + 9A1F85020B3ADFBFE3D383F2 = { isa = PBXNativeTarget; buildConfigurationList = 4EBA6A51E838E294DDFC57F8; buildPhases = ( + 2E115993E9743E9E60D96434, + 8478974C956501F4EA996448, + 8C6D93B7CB9CCF8025AA68EB ); buildRules = ( ); dependencies = ( ); name = "Juce Demo"; productName = "Juce Demo"; productReference = D119A3871626EC2B8EFCB0D4; productInstallPath = "$(HOME)/Applications"; productType = "com.apple.product-type.application"; }; + C1B2C620111BD898B338CCA1 = { isa = PBXProject; buildConfigurationList = C01737B8733CB01B27C1DF59; compatibilityVersion = "Xcode 3.2"; hasScannedForEncodings = 0; mainGroup = 197E966E1B8F9DE1A6F9F0D4; projectDirPath = ""; projectRoot = ""; targets = ( 9A1F85020B3ADFBFE3D383F2 ); }; }; - rootObject = FD051827ADE403C022034508; + rootObject = C1B2C620111BD898B338CCA1; } diff --git a/extras/JuceDemo/Juce Demo.jucer b/extras/JuceDemo/Juce Demo.jucer index 7338693643..47ae7a2306 100644 --- a/extras/JuceDemo/Juce Demo.jucer +++ b/extras/JuceDemo/Juce Demo.jucer @@ -7,32 +7,80 @@ pluginCode="Abcd" pluginChannelConfigs="{ {1, 1}, {2, 2} }" pluginIsSynth="0" pluginWantsMidiIn="0" pluginProducesMidiOut="0" pluginSilenceInIsSilenceOut="0" pluginTailLength="0" pluginEditorRequiresKeys="0" pluginAUExportPrefix="JuceDemoAU" - pluginAUViewClass="JuceDemoAU_V1" pluginRTASCategory="" icon="Duj062Top" - bigIcon="f4hwldS"> + pluginAUViewClass="JuceDemoAU_V1" pluginRTASCategory="" icon="Duj062Top"> + juceFolder="../../../juce" objCExtraSuffix="JSLvvV6j" bigIcon="f4hwldS"> + + + + + + juceFolder="../../../juce" objCExtraSuffix="JSLvvV6j" bigIcon="f4hwldS"> + + + + + + rtasFolder="c:\SDKs\PT_80_SDK" juceFolder="../../../juce" libraryType="1" + bigIcon="f4hwldS"> + + + + + - + rtasFolder="c:\SDKs\PT_80_SDK" juceFolder="../../../juce" libraryType="1" + bigIcon="f4hwldS"> + + + + + + + + + + + - + rtasFolder="c:\SDKs\PT_80_SDK" libraryType="1" juceFolder="../../../juce" + bigIcon="f4hwldS"> + + + + + + + + + + + - - - - @@ -108,15 +156,25 @@ - + + + + + + + + + + + + + + + + + + + + + diff --git a/extras/JuceDemo/JuceLibraryCode/AppConfig.h b/extras/JuceDemo/JuceLibraryCode/AppConfig.h index b40b66507e..9c58c123eb 100644 --- a/extras/JuceDemo/JuceLibraryCode/AppConfig.h +++ b/extras/JuceDemo/JuceLibraryCode/AppConfig.h @@ -3,39 +3,163 @@ IMPORTANT! This file is auto-generated each time you save your project - if you alter its contents, your changes may be overwritten! - If you want to change any of these values, use the Introjucer to do so, rather than - editing this file directly! + If you want to change any of these values, use the Introjucer to do so, + rather than editing this file directly! - Any commented-out settings will fall back to using the default values that - they are given in juce_Config.h + Any commented-out settings will assume their default values. */ -//#define JUCE_FORCE_DEBUG -//#define JUCE_LOG_ASSERTIONS -//#define JUCE_ASIO -//#define JUCE_WASAPI -//#define JUCE_DIRECTSOUND -//#define JUCE_DIRECTSHOW -//#define JUCE_MEDIAFOUNDATION -//#define JUCE_ALSA -//#define JUCE_QUICKTIME -//#define JUCE_OPENGL -//#define JUCE_DIRECT2D -//#define JUCE_USE_FLAC -//#define JUCE_USE_OGGVORBIS -//#define JUCE_USE_CDBURNER -//#define JUCE_USE_CDREADER -//#define JUCE_USE_CAMERA -//#define JUCE_ENABLE_REPAINT_DEBUGGING -//#define JUCE_USE_XINERAMA -//#define JUCE_USE_XSHM -//#define JUCE_USE_XRENDER -//#define JUCE_USE_XCURSOR -#define JUCE_PLUGINHOST_VST 0 -#define JUCE_PLUGINHOST_AU 0 -//#define JUCE_ONLY_BUILD_CORE_LIBRARY -//#define JUCE_WEB_BROWSER -//#define JUCE_SUPPORT_CARBON -//#define JUCE_CHECK_MEMORY_LEAKS -//#define JUCE_CATCH_UNHANDLED_EXCEPTIONS +#ifndef __JUCE_APPCONFIG_SLVVV6J__ +#define __JUCE_APPCONFIG_SLVVV6J__ + +//============================================================================== +#define JUCE_MODULE_AVAILABLE_juce_audio_basics 1 +#define JUCE_MODULE_AVAILABLE_juce_audio_devices 1 +#define JUCE_MODULE_AVAILABLE_juce_audio_formats 1 +#define JUCE_MODULE_AVAILABLE_juce_audio_processors 1 +#define JUCE_MODULE_AVAILABLE_juce_audio_utils 1 +#define JUCE_MODULE_AVAILABLE_juce_core 1 +#define JUCE_MODULE_AVAILABLE_juce_cryptography 1 +#define JUCE_MODULE_AVAILABLE_juce_data_structures 1 +#define JUCE_MODULE_AVAILABLE_juce_events 1 +#define JUCE_MODULE_AVAILABLE_juce_graphics 1 +#define JUCE_MODULE_AVAILABLE_juce_gui_basics 1 +#define JUCE_MODULE_AVAILABLE_juce_gui_extra 1 +#define JUCE_MODULE_AVAILABLE_juce_opengl 1 +#define JUCE_MODULE_AVAILABLE_juce_video 1 + +//============================================================================== +// juce_audio_devices flags: + +#ifndef JUCE_ASIO + //#define JUCE_ASIO +#endif + +#ifndef JUCE_WASAPI + //#define JUCE_WASAPI +#endif + +#ifndef JUCE_DIRECTSOUND + //#define JUCE_DIRECTSOUND +#endif + +#ifndef JUCE_ALSA + //#define JUCE_ALSA +#endif + +#ifndef JUCE_JACK + //#define JUCE_JACK +#endif + +#ifndef JUCE_USE_CDREADER + //#define JUCE_USE_CDREADER +#endif + +#ifndef JUCE_USE_CDBURNER + //#define JUCE_USE_CDBURNER +#endif + +//============================================================================== +// juce_audio_formats flags: + +#ifndef JUCE_USE_FLAC + //#define JUCE_USE_FLAC +#endif + +#ifndef JUCE_USE_OGGVORBIS + //#define JUCE_USE_OGGVORBIS +#endif + +#ifndef JUCE_USE_MP3AUDIOFORMAT + //#define JUCE_USE_MP3AUDIOFORMAT +#endif + +//============================================================================== +// juce_audio_processors flags: + +#ifndef JUCE_PLUGINHOST_VST + #define JUCE_PLUGINHOST_VST 0 +#endif + +#ifndef JUCE_PLUGINHOST_AU + #define JUCE_PLUGINHOST_AU 0 +#endif + +//============================================================================== +// juce_core flags: + +#ifndef JUCE_FORCE_DEBUG + //#define JUCE_FORCE_DEBUG +#endif + +#ifndef JUCE_LOG_ASSERTIONS + //#define JUCE_LOG_ASSERTIONS +#endif + +#ifndef JUCE_CHECK_MEMORY_LEAKS + //#define JUCE_CHECK_MEMORY_LEAKS +#endif + +#ifndef JUCE_DONT_AUTOLINK_TO_WIN32_LIBRARIES + //#define JUCE_DONT_AUTOLINK_TO_WIN32_LIBRARIES +#endif + +//============================================================================== +// juce_graphics flags: + +#ifndef JUCE_USE_COREIMAGE_LOADER + //#define JUCE_USE_COREIMAGE_LOADER +#endif + +#ifndef JUCE_USE_DIRECTWRITE + //#define JUCE_USE_DIRECTWRITE +#endif + +//============================================================================== +// juce_gui_basics flags: + +#ifndef JUCE_ENABLE_REPAINT_DEBUGGING + //#define JUCE_ENABLE_REPAINT_DEBUGGING +#endif + +#ifndef JUCE_USE_XSHM + //#define JUCE_USE_XSHM +#endif + +#ifndef JUCE_USE_XRENDER + //#define JUCE_USE_XRENDER +#endif + +#ifndef JUCE_USE_XCURSOR + //#define JUCE_USE_XCURSOR +#endif + +//============================================================================== +// juce_gui_extra flags: + +#ifndef JUCE_WEB_BROWSER + //#define JUCE_WEB_BROWSER +#endif + +//============================================================================== +// juce_video flags: + +#ifndef JUCE_DIRECTSHOW + //#define JUCE_DIRECTSHOW +#endif + +#ifndef JUCE_MEDIAFOUNDATION + //#define JUCE_MEDIAFOUNDATION +#endif + +#ifndef JUCE_QUICKTIME + //#define JUCE_QUICKTIME +#endif + +#ifndef JUCE_USE_CAMERA + //#define JUCE_USE_CAMERA +#endif + + +#endif // __JUCE_APPCONFIG_SLVVV6J__ diff --git a/extras/JuceDemo/JuceLibraryCode/BinaryData.cpp b/extras/JuceDemo/JuceLibraryCode/BinaryData.cpp index 3b24907906..5c942bebb0 100644 --- a/extras/JuceDemo/JuceLibraryCode/BinaryData.cpp +++ b/extras/JuceDemo/JuceLibraryCode/BinaryData.cpp @@ -5,30 +5,8 @@ */ -#include "BinaryData.h" - - -const char* BinaryData::getNamedResource (const char* resourceNameUTF8, int& numBytes) throw() +namespace BinaryData { - int hash = 0; - if (resourceNameUTF8 != 0) - while (*resourceNameUTF8 != 0) - hash = 31 * hash + *resourceNameUTF8++; - - switch (hash) - { - case 0x62032efa: numBytes = BinaryData::cello_wavSize; return BinaryData::cello_wav; - case 0xaec3f52f: numBytes = BinaryData::demo_table_data_xmlSize; return BinaryData::demo_table_data_xml; - case 0xae303c7c: numBytes = BinaryData::icons_zipSize; return BinaryData::icons_zip; - case 0xdf2195d7: numBytes = BinaryData::juce_pngSize; return BinaryData::juce_png; - case 0xdd644959: numBytes = BinaryData::treedemo_xmlSize; return BinaryData::treedemo_xml; - default: break; - } - - numBytes = 0; - return 0; -} - //================== cello.wav ================== static const unsigned char temp_55d084b5[] = @@ -639,7 +617,7 @@ static const unsigned char temp_55d084b5[] = 255,242,255,242,255,238,255,241,255,238,255,239,255,237,255,239,255,241,255,235,255,232,255,231,255,230,255,234,255,231,255,232,255,230,255,234,255,235,255,234,255,227,255,230,255,231,255,220,255,217,255,210,255,213,255,217,255,217,255,219,255,220,255, 219,255,226,255,223,255,212,255,220,255,220,255,220,255,210,255,223,255,230,255,224,255,227,255,231,255,231,255,231,255,234,255,226,255,232,255,237,255,241,255,235,255,232,255,231,255,232,255,237,255,235,255,234,255,0,0 }; -const char* BinaryData::cello_wav = (const char*) temp_55d084b5; +const char* cello_wav = (const char*) temp_55d084b5; //================== demo table data.xml ================== static const unsigned char temp_5a40772c[] = @@ -693,7 +671,7 @@ static const unsigned char temp_5a40772c[] = " \r\n" ""; -const char* BinaryData::demo_table_data_xml = (const char*) temp_5a40772c; +const char* demo_table_data_xml = (const char*) temp_5a40772c; //================== icons.zip ================== static const unsigned char temp_a1fd9237[] = @@ -1887,7 +1865,7 @@ static const unsigned char temp_a1fd9237[] = 194,180,16,0,0,195,74,0,0,22,0,0,0,0,0,0,0,1,0,32,0,0,0,236,35,1,0,112,114,101,102,101,114,101,110,99,101,115,45,115,121,115,116,101,109,46,115,118,103,80,75,1,2,20,0,20,0,2,0,8,0,183,128,249,52,199,174,1,222,145,13,0,0,154,63,0,0,18,0,0,0,0,0,0,0,1, 0,32,0,0,0,212,52,1,0,115,121,115,116,101,109,45,108,111,103,45,111,117,116,46,115,118,103,80,75,5,6,0,0,0,0,20,0,20,0,249,4,0,0,149,66,1,0,0,0,0,0 }; -const char* BinaryData::icons_zip = (const char*) temp_a1fd9237; +const char* icons_zip = (const char*) temp_a1fd9237; //================== juce.png ================== static const unsigned char temp_ffaf8e7e[] = @@ -2106,7 +2084,7 @@ static const unsigned char temp_ffaf8e7e[] = 5,5,121,88,4,4,120,152,128,189,32,208,249,43,255,222,188,249,8,154,219,1,221,19,4,219,204,143,60,183,67,179,173,12,163,128,58,0,32,128,24,169,104,14,108,152,30,148,104,96,183,130,192,206,199,67,62,144,8,54,143,129,124,139,202,223,209,196,50,52,0,64,0, 49,82,217,44,88,245,132,126,19,61,174,9,48,228,33,254,209,196,50,4,0,64,128,1,0,102,20,176,16,7,130,12,56,0,0,0,0,73,69,78,68,174,66,96,130,0,0 }; -const char* BinaryData::juce_png = (const char*) temp_ffaf8e7e; +const char* juce_png = (const char*) temp_ffaf8e7e; //================== treedemo.xml ================== static const unsigned char temp_816ae700[] = @@ -2161,4 +2139,33 @@ static const unsigned char temp_816ae700[] = " \r\n" ""; -const char* BinaryData::treedemo_xml = (const char*) temp_816ae700; +const char* treedemo_xml = (const char*) temp_816ae700; + + +const char* getNamedResource (const char* resourceNameUTF8, int& numBytes) throw() +{ + int hash = 0; + if (resourceNameUTF8 != 0) + while (*resourceNameUTF8 != 0) + hash = 31 * hash + *resourceNameUTF8++; + + switch (hash) + { + case 0x62032efa: + case 0x877c5941: numBytes = 46348; return cello_wav; + case 0xaec3f52f: + case 0x5ef7e0f0: numBytes = 5239; return demo_table_data_xml; + case 0xae303c7c: + case 0xae3ee894: numBytes = 83876; return icons_zip; + case 0xdf2195d7: + case 0xc23b6643: numBytes = 15290; return juce_png; + case 0xdd644959: + case 0x0ff8e16f: numBytes = 1126; return treedemo_xml; + default: break; + } + + numBytes = 0; + return 0; +} + +} diff --git a/extras/JuceDemo/JuceLibraryCode/BinaryData.h b/extras/JuceDemo/JuceLibraryCode/BinaryData.h index 144c767467..89d27cf6c8 100644 --- a/extras/JuceDemo/JuceLibraryCode/BinaryData.h +++ b/extras/JuceDemo/JuceLibraryCode/BinaryData.h @@ -25,4 +25,25 @@ namespace BinaryData // 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). const char* getNamedResource (const char* resourceNameUTF8, int& dataSizeInBytes) throw(); + + //============================================================================== + // This class acts as an ImageProvider that will access the BinaryData images + class ImageProvider : public juce::ComponentBuilder::ImageProvider + { + public: + ImageProvider() noexcept {} + + juce::Image getImageForIdentifier (const juce::var& imageIdentifier) + { + int dataSize = 0; + const char* const data = getNamedResource (imageIdentifier.toString().toUTF8(), dataSize); + + if (data != nullptr) + return juce::ImageCache::getFromMemory (data, dataSize); + + return juce::Image(); + } + + juce::var getIdentifierForImage (const juce::Image&) { return juce::var(); } + }; } diff --git a/extras/JuceDemo/JuceLibraryCode/JuceHeader.h b/extras/JuceDemo/JuceLibraryCode/JuceHeader.h index 9306f73603..e432129d83 100644 --- a/extras/JuceDemo/JuceLibraryCode/JuceHeader.h +++ b/extras/JuceDemo/JuceLibraryCode/JuceHeader.h @@ -4,8 +4,8 @@ project - if you alter its contents, your changes may be overwritten! This is the header file that your files should include in order to get all the - Juce library headers. You should NOT include juce.h or juce_amalgamated.h directly in - your own source files, because that wouldn't pick up the correct Juce configuration + JUCE library headers. You should avoid including the JUCE headers directly in + your own source files, because that wouldn't pick up the correct configuration options for your app. */ @@ -14,9 +14,28 @@ #define __APPHEADERFILE_SLVVV6J__ #include "AppConfig.h" -#include "../../../juce_amalgamated.h" +#include "modules/juce_audio_basics/juce_audio_basics.h" +#include "modules/juce_audio_devices/juce_audio_devices.h" +#include "modules/juce_audio_formats/juce_audio_formats.h" +#include "modules/juce_audio_processors/juce_audio_processors.h" +#include "modules/juce_audio_utils/juce_audio_utils.h" +#include "modules/juce_core/juce_core.h" +#include "modules/juce_cryptography/juce_cryptography.h" +#include "modules/juce_data_structures/juce_data_structures.h" +#include "modules/juce_events/juce_events.h" +#include "modules/juce_graphics/juce_graphics.h" +#include "modules/juce_gui_basics/juce_gui_basics.h" +#include "modules/juce_gui_extra/juce_gui_extra.h" +#include "modules/juce_opengl/juce_opengl.h" +#include "modules/juce_video/juce_video.h" #include "BinaryData.h" +#if ! DONT_SET_USING_JUCE_NAMESPACE + // If your code uses a lot of JUCE classes, then this will obviously save you + // a lot of typing, but can be disabled by setting DONT_SET_USING_JUCE_NAMESPACE. + using namespace juce; +#endif + namespace ProjectInfo { const char* const projectName = "Juce Demo"; diff --git a/extras/JuceDemo/JuceLibraryCode/JuceLibraryCode1.cpp b/extras/JuceDemo/JuceLibraryCode/JuceLibraryCode1.cpp deleted file mode 100644 index 2d6380298b..0000000000 --- a/extras/JuceDemo/JuceLibraryCode/JuceLibraryCode1.cpp +++ /dev/null @@ -1,15 +0,0 @@ -/* - - IMPORTANT! This file is auto-generated each time you save your - project - if you alter its contents, your changes may be overwritten! - - This file pulls in all the Juce source code, and builds it using the settings - defined in AppConfig.h. - - If you want to change the method by which Juce is linked into your app, use the - Jucer to change it, rather than trying to edit this file directly. - -*/ - -#include "AppConfig.h" -#include "../../../amalgamation/juce_amalgamated1.cpp" diff --git a/extras/JuceDemo/JuceLibraryCode/JuceLibraryCode1.mm b/extras/JuceDemo/JuceLibraryCode/JuceLibraryCode1.mm deleted file mode 100644 index 2d6380298b..0000000000 --- a/extras/JuceDemo/JuceLibraryCode/JuceLibraryCode1.mm +++ /dev/null @@ -1,15 +0,0 @@ -/* - - IMPORTANT! This file is auto-generated each time you save your - project - if you alter its contents, your changes may be overwritten! - - This file pulls in all the Juce source code, and builds it using the settings - defined in AppConfig.h. - - If you want to change the method by which Juce is linked into your app, use the - Jucer to change it, rather than trying to edit this file directly. - -*/ - -#include "AppConfig.h" -#include "../../../amalgamation/juce_amalgamated1.cpp" diff --git a/extras/JuceDemo/JuceLibraryCode/JuceLibraryCode2.cpp b/extras/JuceDemo/JuceLibraryCode/JuceLibraryCode2.cpp deleted file mode 100644 index 655d816baf..0000000000 --- a/extras/JuceDemo/JuceLibraryCode/JuceLibraryCode2.cpp +++ /dev/null @@ -1,15 +0,0 @@ -/* - - IMPORTANT! This file is auto-generated each time you save your - project - if you alter its contents, your changes may be overwritten! - - This file pulls in all the Juce source code, and builds it using the settings - defined in AppConfig.h. - - If you want to change the method by which Juce is linked into your app, use the - Jucer to change it, rather than trying to edit this file directly. - -*/ - -#include "AppConfig.h" -#include "../../../amalgamation/juce_amalgamated2.cpp" diff --git a/extras/JuceDemo/JuceLibraryCode/JuceLibraryCode2.mm b/extras/JuceDemo/JuceLibraryCode/JuceLibraryCode2.mm deleted file mode 100644 index 655d816baf..0000000000 --- a/extras/JuceDemo/JuceLibraryCode/JuceLibraryCode2.mm +++ /dev/null @@ -1,15 +0,0 @@ -/* - - IMPORTANT! This file is auto-generated each time you save your - project - if you alter its contents, your changes may be overwritten! - - This file pulls in all the Juce source code, and builds it using the settings - defined in AppConfig.h. - - If you want to change the method by which Juce is linked into your app, use the - Jucer to change it, rather than trying to edit this file directly. - -*/ - -#include "AppConfig.h" -#include "../../../amalgamation/juce_amalgamated2.cpp" diff --git a/extras/JuceDemo/JuceLibraryCode/JuceLibraryCode3.cpp b/extras/JuceDemo/JuceLibraryCode/JuceLibraryCode3.cpp deleted file mode 100644 index 5d7de97f50..0000000000 --- a/extras/JuceDemo/JuceLibraryCode/JuceLibraryCode3.cpp +++ /dev/null @@ -1,15 +0,0 @@ -/* - - IMPORTANT! This file is auto-generated each time you save your - project - if you alter its contents, your changes may be overwritten! - - This file pulls in all the Juce source code, and builds it using the settings - defined in AppConfig.h. - - If you want to change the method by which Juce is linked into your app, use the - Jucer to change it, rather than trying to edit this file directly. - -*/ - -#include "AppConfig.h" -#include "../../../amalgamation/juce_amalgamated3.cpp" diff --git a/extras/JuceDemo/JuceLibraryCode/JuceLibraryCode3.mm b/extras/JuceDemo/JuceLibraryCode/JuceLibraryCode3.mm deleted file mode 100644 index 5d7de97f50..0000000000 --- a/extras/JuceDemo/JuceLibraryCode/JuceLibraryCode3.mm +++ /dev/null @@ -1,15 +0,0 @@ -/* - - IMPORTANT! This file is auto-generated each time you save your - project - if you alter its contents, your changes may be overwritten! - - This file pulls in all the Juce source code, and builds it using the settings - defined in AppConfig.h. - - If you want to change the method by which Juce is linked into your app, use the - Jucer to change it, rather than trying to edit this file directly. - -*/ - -#include "AppConfig.h" -#include "../../../amalgamation/juce_amalgamated3.cpp" diff --git a/extras/JuceDemo/JuceLibraryCode/JuceLibraryCode4.cpp b/extras/JuceDemo/JuceLibraryCode/JuceLibraryCode4.cpp deleted file mode 100644 index 1ece5dc3d2..0000000000 --- a/extras/JuceDemo/JuceLibraryCode/JuceLibraryCode4.cpp +++ /dev/null @@ -1,15 +0,0 @@ -/* - - IMPORTANT! This file is auto-generated each time you save your - project - if you alter its contents, your changes may be overwritten! - - This file pulls in all the Juce source code, and builds it using the settings - defined in AppConfig.h. - - If you want to change the method by which Juce is linked into your app, use the - Jucer to change it, rather than trying to edit this file directly. - -*/ - -#include "AppConfig.h" -#include "../../../amalgamation/juce_amalgamated4.cpp" diff --git a/extras/JuceDemo/JuceLibraryCode/JuceLibraryCode4.mm b/extras/JuceDemo/JuceLibraryCode/JuceLibraryCode4.mm deleted file mode 100644 index 1ece5dc3d2..0000000000 --- a/extras/JuceDemo/JuceLibraryCode/JuceLibraryCode4.mm +++ /dev/null @@ -1,15 +0,0 @@ -/* - - IMPORTANT! This file is auto-generated each time you save your - project - if you alter its contents, your changes may be overwritten! - - This file pulls in all the Juce source code, and builds it using the settings - defined in AppConfig.h. - - If you want to change the method by which Juce is linked into your app, use the - Jucer to change it, rather than trying to edit this file directly. - -*/ - -#include "AppConfig.h" -#include "../../../amalgamation/juce_amalgamated4.cpp" diff --git a/extras/JuceDemo/JuceLibraryCode/ReadMe.txt b/extras/JuceDemo/JuceLibraryCode/ReadMe.txt new file mode 100644 index 0000000000..f6c3564e99 --- /dev/null +++ b/extras/JuceDemo/JuceLibraryCode/ReadMe.txt @@ -0,0 +1,12 @@ + + Important Note!! + ================ + +The purpose of this folder is to contain files that are auto-generated by the Introjucer, +and ALL files in this folder will be mercilessly DELETED and completely re-written whenever +the Introjucer saves your project. + +Therefore, it's a bad idea to make any manual changes to the files in here, or to +put any of your own files in here if you don't want to lose them. (Of course you may choose +to add the folder's contents to your version-control system so that you can re-merge your own +modifications after the Introjucer has saved its changes). diff --git a/extras/JuceDemo/JuceLibraryCode/modules/juce_audio_basics/juce_audio_basics.h b/extras/JuceDemo/JuceLibraryCode/modules/juce_audio_basics/juce_audio_basics.h new file mode 100644 index 0000000000..b9a775c861 --- /dev/null +++ b/extras/JuceDemo/JuceLibraryCode/modules/juce_audio_basics/juce_audio_basics.h @@ -0,0 +1,5 @@ +// This is an auto-generated file to redirect any included +// module headers to the correct external folder. + +#include "../../../../../modules/juce_audio_basics/juce_audio_basics.h" + diff --git a/extras/JuceDemo/JuceLibraryCode/modules/juce_audio_devices/juce_audio_devices.h b/extras/JuceDemo/JuceLibraryCode/modules/juce_audio_devices/juce_audio_devices.h new file mode 100644 index 0000000000..6a672ccda4 --- /dev/null +++ b/extras/JuceDemo/JuceLibraryCode/modules/juce_audio_devices/juce_audio_devices.h @@ -0,0 +1,5 @@ +// This is an auto-generated file to redirect any included +// module headers to the correct external folder. + +#include "../../../../../modules/juce_audio_devices/juce_audio_devices.h" + diff --git a/extras/JuceDemo/JuceLibraryCode/modules/juce_audio_formats/juce_audio_formats.h b/extras/JuceDemo/JuceLibraryCode/modules/juce_audio_formats/juce_audio_formats.h new file mode 100644 index 0000000000..4307ccc794 --- /dev/null +++ b/extras/JuceDemo/JuceLibraryCode/modules/juce_audio_formats/juce_audio_formats.h @@ -0,0 +1,5 @@ +// This is an auto-generated file to redirect any included +// module headers to the correct external folder. + +#include "../../../../../modules/juce_audio_formats/juce_audio_formats.h" + diff --git a/extras/JuceDemo/JuceLibraryCode/modules/juce_audio_processors/juce_audio_processors.h b/extras/JuceDemo/JuceLibraryCode/modules/juce_audio_processors/juce_audio_processors.h new file mode 100644 index 0000000000..bd61929b93 --- /dev/null +++ b/extras/JuceDemo/JuceLibraryCode/modules/juce_audio_processors/juce_audio_processors.h @@ -0,0 +1,5 @@ +// This is an auto-generated file to redirect any included +// module headers to the correct external folder. + +#include "../../../../../modules/juce_audio_processors/juce_audio_processors.h" + diff --git a/extras/JuceDemo/JuceLibraryCode/modules/juce_audio_utils/juce_audio_utils.h b/extras/JuceDemo/JuceLibraryCode/modules/juce_audio_utils/juce_audio_utils.h new file mode 100644 index 0000000000..dfd50e5536 --- /dev/null +++ b/extras/JuceDemo/JuceLibraryCode/modules/juce_audio_utils/juce_audio_utils.h @@ -0,0 +1,5 @@ +// This is an auto-generated file to redirect any included +// module headers to the correct external folder. + +#include "../../../../../modules/juce_audio_utils/juce_audio_utils.h" + diff --git a/extras/JuceDemo/JuceLibraryCode/modules/juce_core/juce_core.h b/extras/JuceDemo/JuceLibraryCode/modules/juce_core/juce_core.h new file mode 100644 index 0000000000..ee07e01a50 --- /dev/null +++ b/extras/JuceDemo/JuceLibraryCode/modules/juce_core/juce_core.h @@ -0,0 +1,5 @@ +// This is an auto-generated file to redirect any included +// module headers to the correct external folder. + +#include "../../../../../modules/juce_core/juce_core.h" + diff --git a/extras/JuceDemo/JuceLibraryCode/modules/juce_cryptography/juce_cryptography.h b/extras/JuceDemo/JuceLibraryCode/modules/juce_cryptography/juce_cryptography.h new file mode 100644 index 0000000000..860c0221c7 --- /dev/null +++ b/extras/JuceDemo/JuceLibraryCode/modules/juce_cryptography/juce_cryptography.h @@ -0,0 +1,5 @@ +// This is an auto-generated file to redirect any included +// module headers to the correct external folder. + +#include "../../../../../modules/juce_cryptography/juce_cryptography.h" + diff --git a/extras/JuceDemo/JuceLibraryCode/modules/juce_data_structures/juce_data_structures.h b/extras/JuceDemo/JuceLibraryCode/modules/juce_data_structures/juce_data_structures.h new file mode 100644 index 0000000000..00f01d46aa --- /dev/null +++ b/extras/JuceDemo/JuceLibraryCode/modules/juce_data_structures/juce_data_structures.h @@ -0,0 +1,5 @@ +// This is an auto-generated file to redirect any included +// module headers to the correct external folder. + +#include "../../../../../modules/juce_data_structures/juce_data_structures.h" + diff --git a/extras/JuceDemo/JuceLibraryCode/modules/juce_events/juce_events.h b/extras/JuceDemo/JuceLibraryCode/modules/juce_events/juce_events.h new file mode 100644 index 0000000000..d0b4133815 --- /dev/null +++ b/extras/JuceDemo/JuceLibraryCode/modules/juce_events/juce_events.h @@ -0,0 +1,5 @@ +// This is an auto-generated file to redirect any included +// module headers to the correct external folder. + +#include "../../../../../modules/juce_events/juce_events.h" + diff --git a/extras/JuceDemo/JuceLibraryCode/modules/juce_graphics/juce_graphics.h b/extras/JuceDemo/JuceLibraryCode/modules/juce_graphics/juce_graphics.h new file mode 100644 index 0000000000..f287a18ee6 --- /dev/null +++ b/extras/JuceDemo/JuceLibraryCode/modules/juce_graphics/juce_graphics.h @@ -0,0 +1,5 @@ +// This is an auto-generated file to redirect any included +// module headers to the correct external folder. + +#include "../../../../../modules/juce_graphics/juce_graphics.h" + diff --git a/extras/JuceDemo/JuceLibraryCode/modules/juce_gui_basics/juce_gui_basics.h b/extras/JuceDemo/JuceLibraryCode/modules/juce_gui_basics/juce_gui_basics.h new file mode 100644 index 0000000000..c678c1cfc9 --- /dev/null +++ b/extras/JuceDemo/JuceLibraryCode/modules/juce_gui_basics/juce_gui_basics.h @@ -0,0 +1,5 @@ +// This is an auto-generated file to redirect any included +// module headers to the correct external folder. + +#include "../../../../../modules/juce_gui_basics/juce_gui_basics.h" + diff --git a/extras/JuceDemo/JuceLibraryCode/modules/juce_gui_extra/juce_gui_extra.h b/extras/JuceDemo/JuceLibraryCode/modules/juce_gui_extra/juce_gui_extra.h new file mode 100644 index 0000000000..7efee1d103 --- /dev/null +++ b/extras/JuceDemo/JuceLibraryCode/modules/juce_gui_extra/juce_gui_extra.h @@ -0,0 +1,5 @@ +// This is an auto-generated file to redirect any included +// module headers to the correct external folder. + +#include "../../../../../modules/juce_gui_extra/juce_gui_extra.h" + diff --git a/extras/JuceDemo/JuceLibraryCode/modules/juce_opengl/juce_opengl.h b/extras/JuceDemo/JuceLibraryCode/modules/juce_opengl/juce_opengl.h new file mode 100644 index 0000000000..e427fa2135 --- /dev/null +++ b/extras/JuceDemo/JuceLibraryCode/modules/juce_opengl/juce_opengl.h @@ -0,0 +1,5 @@ +// This is an auto-generated file to redirect any included +// module headers to the correct external folder. + +#include "../../../../../modules/juce_opengl/juce_opengl.h" + diff --git a/extras/JuceDemo/JuceLibraryCode/modules/juce_video/juce_video.h b/extras/JuceDemo/JuceLibraryCode/modules/juce_video/juce_video.h new file mode 100644 index 0000000000..1b77c4a466 --- /dev/null +++ b/extras/JuceDemo/JuceLibraryCode/modules/juce_video/juce_video.h @@ -0,0 +1,5 @@ +// This is an auto-generated file to redirect any included +// module headers to the correct external folder. + +#include "../../../../../modules/juce_video/juce_video.h" + diff --git a/extras/JuceDemo/Source/ApplicationStartup.cpp b/extras/JuceDemo/Source/ApplicationStartup.cpp index 24bf7dcba2..093d763d11 100644 --- a/extras/JuceDemo/Source/ApplicationStartup.cpp +++ b/extras/JuceDemo/Source/ApplicationStartup.cpp @@ -43,13 +43,13 @@ public: //============================================================================== void initialise (const String& /*commandLine*/) { - #if JUCE_IOS || JUCE_ANDROID + #if JUCE_IOS || JUCE_ANDROID theMainWindow.setVisible (true); theMainWindow.setFullScreen (true); - #else + #else theMainWindow.centreWithSize (700, 600); theMainWindow.setVisible (true); - #endif + #endif // this little function just demonstrates a few system info calls Logger::outputDebugString (collectSomeSystemInfo()); diff --git a/extras/JuceDemo/Source/MainDemoWindow.cpp b/extras/JuceDemo/Source/MainDemoWindow.cpp index a2bad8e515..492fc945bb 100644 --- a/extras/JuceDemo/Source/MainDemoWindow.cpp +++ b/extras/JuceDemo/Source/MainDemoWindow.cpp @@ -34,43 +34,39 @@ class ContentComp : public Component, { public: //============================================================================== - ContentComp (MainDemoWindow* mainWindow_) + ContentComp (MainDemoWindow& mainWindow_) : mainWindow (mainWindow_), currentDemoId (0) { invokeDirectly (showRendering, true); } - ~ContentComp() - { - } - - //============================================================================== - void resized() - { - if (currentDemo != 0) - currentDemo->setBounds (0, 0, getWidth(), getHeight()); - } - //============================================================================== void showDemo (Component* demoComp) { currentDemo = demoComp; - addAndMakeVisible (currentDemo); - resized(); + + #if JUCE_OPENGL + if (openGLWrapperComp != nullptr) + openGLWrapperComp->addAndMakeVisible (currentDemo); + else + #endif + addAndMakeVisible (currentDemo); + + currentDemo->setBounds ("0, 0, parent.width, parent.height"); } //============================================================================== const StringArray getMenuBarNames() { - const char* const names[] = { "Demo", "Look-and-feel", 0 }; + const char* const names[] = { "Demo", "Look-and-feel", nullptr }; return StringArray (names); } const PopupMenu getMenuForIndex (int menuIndex, const String& /*menuName*/) { - ApplicationCommandManager* commandManager = &(mainWindow->commandManager); + ApplicationCommandManager* commandManager = &(mainWindow.commandManager); PopupMenu menu; @@ -102,22 +98,25 @@ public: menu.addSeparator(); menu.addCommandItem (commandManager, useNativeTitleBar); -#if JUCE_MAC + #if JUCE_MAC menu.addCommandItem (commandManager, useNativeMenus); -#endif + #endif -#if ! JUCE_LINUX + #if ! JUCE_LINUX menu.addCommandItem (commandManager, goToKioskMode); -#endif + #endif - StringArray renderingEngines (getPeer()->getAvailableRenderingEngines()); - if (renderingEngines.size() > 1) + StringArray engines (getRenderingEngines()); + + if (engines.size() > 1) { menu.addSeparator(); - for (int i = 0; i < renderingEngines.size(); ++i) - menu.addItem (5001 + i, "Use " + renderingEngines[i], true, - i == getPeer()->getCurrentRenderingEngine()); + const int currentEngine = openGLWrapperComp != nullptr ? engines.size() - 1 + : getPeer()->getCurrentRenderingEngine(); + + for (int i = 0; i < engines.size(); ++i) + menu.addItem (5001 + i, "Use " + engines[i], true, i == currentEngine); } } @@ -130,7 +129,40 @@ public: // other special cases here.. if (menuItemID >= 5001 && menuItemID < 5010) - getPeer()->setCurrentRenderingEngine (menuItemID - 5001); + { + const int engineIndex = menuItemID - 5001; + + #if JUCE_OPENGL + if (engineIndex >= getPeer()->getAvailableRenderingEngines().size()) + { + setUsingOpenGLRenderer (true); + return; + } + #endif + + setUsingOpenGLRenderer (false); + getPeer()->setCurrentRenderingEngine (engineIndex); + } + } + + void setUsingOpenGLRenderer (bool shouldUseOpenGL) + { + #if JUCE_OPENGL + if (shouldUseOpenGL && currentDemoId != showOpenGL) + { + if (openGLWrapperComp == nullptr) + { + addAndMakeVisible (openGLWrapperComp = new DemoOpenGLComp (currentDemo)); + openGLWrapperComp->setBounds ("0, 0, parent.width, parent.height"); + } + } + else + { + openGLWrapperComp = nullptr; + addAndMakeVisible (currentDemo); + resized(); + } + #endif } //============================================================================== @@ -166,13 +198,13 @@ public: setDefaultLookAndFeel, setOldSchoolLookAndFeel, useNativeTitleBar -#if JUCE_MAC - , useNativeMenus -#endif + #if JUCE_MAC + , useNativeMenus + #endif -#if ! JUCE_LINUX - , goToKioskMode -#endif + #if ! JUCE_LINUX + , goToKioskMode + #endif }; commands.addArray (ids, numElementsInArray (ids)); @@ -239,45 +271,45 @@ public: result.setInfo ("OpenGL", "Shows the OpenGL demo", demosCategory, 0); result.addDefaultKeypress ('9', ModifierKeys::commandModifier); result.setTicked (currentDemoId == showOpenGL); -#if ! JUCE_OPENGL + #if ! JUCE_OPENGL result.setActive (false); -#endif + #endif break; case showQuicktime: result.setInfo ("Quicktime", "Shows the Quicktime demo", demosCategory, 0); result.addDefaultKeypress ('b', ModifierKeys::commandModifier); result.setTicked (currentDemoId == showQuicktime); -#if ! (JUCE_QUICKTIME && ! JUCE_LINUX) + #if ! (JUCE_QUICKTIME && ! JUCE_LINUX) result.setActive (false); -#endif + #endif break; case showDirectShow: result.setInfo ("DirectShow", "Shows the DirectShow demo", demosCategory, 0); result.addDefaultKeypress ('b', ModifierKeys::commandModifier); result.setTicked (currentDemoId == showDirectShow); -#if ! JUCE_DIRECTSHOW + #if ! JUCE_DIRECTSHOW result.setActive (false); -#endif + #endif break; case showCamera: result.setInfo ("Camera Capture", "Shows the camera demo", demosCategory, 0); result.addDefaultKeypress ('c', ModifierKeys::commandModifier); result.setTicked (currentDemoId == showCamera); -#if ! JUCE_USE_CAMERA + #if ! JUCE_USE_CAMERA result.setActive (false); -#endif + #endif break; case showWebBrowser: result.setInfo ("Web Browser", "Shows the web browser demo", demosCategory, 0); result.addDefaultKeypress ('i', ModifierKeys::commandModifier); result.setTicked (currentDemoId == showWebBrowser); -#if (! JUCE_WEB_BROWSER) || JUCE_LINUX + #if (! JUCE_WEB_BROWSER) || JUCE_LINUX result.setActive (false); -#endif + #endif break; case showCodeEditor: @@ -304,22 +336,22 @@ public: case useNativeTitleBar: result.setInfo ("Use native window title bar", String::empty, generalCategory, 0); - result.setTicked (mainWindow->isUsingNativeTitleBar()); + result.setTicked (mainWindow.isUsingNativeTitleBar()); break; -#if JUCE_MAC + #if JUCE_MAC case useNativeMenus: result.setInfo ("Use the native OSX menu bar", String::empty, generalCategory, 0); result.setTicked (MenuBarModel::getMacMainMenu() != 0); break; -#endif + #endif -#if ! JUCE_LINUX + #if ! JUCE_LINUX case goToKioskMode: result.setInfo ("Show full-screen kiosk mode", String::empty, generalCategory, 0); result.setTicked (Desktop::getInstance().getKioskModeComponent() != 0); break; -#endif + #endif default: break; @@ -372,38 +404,43 @@ public: break; case showOpenGL: -#if JUCE_OPENGL + #if JUCE_OPENGL + setUsingOpenGLRenderer (false); showDemo (createOpenGLDemo()); currentDemoId = showOpenGL; -#endif + #endif break; case showQuicktime: -#if JUCE_QUICKTIME && ! JUCE_LINUX + #if JUCE_QUICKTIME && ! JUCE_LINUX + setUsingOpenGLRenderer (false); showDemo (createQuickTimeDemo()); currentDemoId = showQuicktime; -#endif + #endif break; case showDirectShow: -#if JUCE_DIRECTSHOW + #if JUCE_DIRECTSHOW + setUsingOpenGLRenderer (false); showDemo (createDirectShowDemo()); currentDemoId = showDirectShow; -#endif + #endif break; case showCamera: -#if JUCE_USE_CAMERA + #if JUCE_USE_CAMERA + setUsingOpenGLRenderer (false); showDemo (createCameraDemo()); currentDemoId = showCamera; -#endif + #endif break; case showWebBrowser: -#if JUCE_WEB_BROWSER + #if JUCE_WEB_BROWSER + setUsingOpenGLRenderer (false); showDemo (createWebBrowserDemo()); currentDemoId = showWebBrowser; -#endif + #endif break; case showCodeEditor: @@ -425,38 +462,38 @@ public: break; case useNativeTitleBar: - mainWindow->setUsingNativeTitleBar (! mainWindow->isUsingNativeTitleBar()); + mainWindow.setUsingNativeTitleBar (! mainWindow.isUsingNativeTitleBar()); break; -#if JUCE_MAC + #if JUCE_MAC case useNativeMenus: if (MenuBarModel::getMacMainMenu() != 0) { MenuBarModel::setMacMainMenu (0); - mainWindow->setMenuBar ((ContentComp*) mainWindow->getContentComponent()); + mainWindow.setMenuBar ((ContentComp*) mainWindow.getContentComponent()); } else { - MenuBarModel::setMacMainMenu ((ContentComp*) mainWindow->getContentComponent()); - mainWindow->setMenuBar (0); + MenuBarModel::setMacMainMenu ((ContentComp*) mainWindow.getContentComponent()); + mainWindow.setMenuBar (0); } break; -#endif + #endif -#if ! JUCE_LINUX + #if ! JUCE_LINUX case goToKioskMode: - if (Desktop::getInstance().getKioskModeComponent() == 0) { - Desktop::getInstance().setKioskModeComponent (getTopLevelComponent()); - } - else - { - Desktop::getInstance().setKioskModeComponent (0); - } + Desktop& desktop = Desktop::getInstance(); - break; -#endif + if (desktop.getKioskModeComponent() == nullptr) + desktop.setKioskModeComponent (getTopLevelComponent()); + else + desktop.setKioskModeComponent (nullptr); + + break; + } + #endif default: return false; @@ -467,7 +504,7 @@ public: private: //============================================================================== - MainDemoWindow* mainWindow; + MainDemoWindow& mainWindow; OldSchoolLookAndFeel oldLookAndFeel; ScopedPointer currentDemo; int currentDemoId; @@ -476,6 +513,49 @@ private: // just need to create one of these and leave it // there to do its work.. + //============================================================================== + #if JUCE_OPENGL + class DemoOpenGLComp : public OpenGLComponent + { + public: + DemoOpenGLComp (Component* contentComp) + : OpenGLComponent (useBackgroundThread | allowSubComponents) + { + addAndMakeVisible (contentComp); + } + + ~DemoOpenGLComp() + { + // It's essential to call this method before our class is destroyed, to + // make sure that the background renderer thread doesn't try to call it + // while it's being dismantled.. + stopRenderThread(); + } + + void newOpenGLContextCreated() {} + void renderOpenGL() {} + + void paint (Graphics& g) + { + g.fillAll (Colours::azure); + } + }; + + ScopedPointer openGLWrapperComp; + #endif + + StringArray getRenderingEngines() + { + StringArray renderingEngines (getPeer()->getAvailableRenderingEngines()); + + #if JUCE_OPENGL + renderingEngines.add ("Use OpenGL Renderer"); + #endif + + return renderingEngines; + } + + //============================================================================== enum CommandIDs { showRendering = 0x2000, @@ -526,10 +606,6 @@ public: setIconTooltip ("Juce Demo App!"); } - ~DemoTaskbarComponent() - { - } - void mouseDown (const MouseEvent&) { PopupMenu m; @@ -554,7 +630,7 @@ MainDemoWindow::MainDemoWindow() setResizable (true, false); // resizability is a property of ResizableWindow setResizeLimits (400, 300, 8192, 8192); - ContentComp* contentComp = new ContentComp (this); + ContentComp* contentComp = new ContentComp (*this); commandManager.registerAllCommandsForTarget (contentComp); commandManager.registerAllCommandsForTarget (JUCEApplication::getInstance()); @@ -577,20 +653,20 @@ MainDemoWindow::MainDemoWindow() setVisible (true); - #if JUCE_WINDOWS || JUCE_LINUX + #if JUCE_WINDOWS || JUCE_LINUX taskbarIcon = new DemoTaskbarComponent(); - #endif + #endif } MainDemoWindow::~MainDemoWindow() { // because we've set the content comp to be used as our menu bar model, we // have to switch this off before deleting the content comp.. - setMenuBar (0); + setMenuBar (nullptr); - #if JUCE_MAC // ..and also the main bar if we're using that on a Mac... - MenuBarModel::setMacMainMenu (0); - #endif + #if JUCE_MAC // ..and also the main bar if we're using that on a Mac... + MenuBarModel::setMacMainMenu (nullptr); + #endif // clearing the content component will delete the current one, and // that will in turn delete all its child components. You don't always diff --git a/extras/JuceDemo/Source/demos/AudioDemoPlaybackPage.cpp b/extras/JuceDemo/Source/demos/AudioDemoPlaybackPage.cpp index c4a0e1d21e..0ba089f8f9 100644 --- a/extras/JuceDemo/Source/demos/AudioDemoPlaybackPage.cpp +++ b/extras/JuceDemo/Source/demos/AudioDemoPlaybackPage.cpp @@ -24,20 +24,26 @@ #include "AudioDemoPlaybackPage.h" - //[MiscUserDefs] You can add your own user definitions and misc code here... class DemoThumbnailComp : public Component, public ChangeListener, - public FileDragAndDropTarget + public FileDragAndDropTarget, + private Timer { public: - DemoThumbnailComp() - : thumbnailCache (5), + DemoThumbnailComp (AudioFormatManager& formatManager, + AudioTransportSource& transportSource_, + Slider& zoomSlider_) + : transportSource (transportSource_), + zoomSlider (zoomSlider_), + thumbnailCache (5), thumbnail (512, formatManager, thumbnailCache) { startTime = endTime = 0; - formatManager.registerBasicFormats(); thumbnail.addChangeListener (this); + + currentPositionMarker.setFill (Colours::purple.withAlpha (0.7f)); + addAndMakeVisible (¤tPositionMarker); } ~DemoThumbnailComp() @@ -50,14 +56,17 @@ public: thumbnail.setSource (new FileInputSource (file)); startTime = 0; endTime = thumbnail.getTotalLength(); + startTimer (1000 / 40); } void setZoomFactor (double amount) { if (thumbnail.getTotalLength() > 0) { - double timeDisplayed = jmax (0.001, (thumbnail.getTotalLength() - startTime) * (1.0 - jlimit (0.0, 1.0, amount))); - endTime = startTime + timeDisplayed; + const double newScale = jmax (0.001, thumbnail.getTotalLength() * (1.0 - jlimit (0.0, 0.99, amount))); + const double timeAtCentre = xToTime (getWidth() / 2.0f); + startTime = timeAtCentre - newScale * 0.5; + endTime = timeAtCentre + newScale * 0.5; repaint(); } } @@ -66,10 +75,14 @@ public: { if (thumbnail.getTotalLength() > 0) { - double newStart = startTime + (wheelIncrementX + wheelIncrementY) * (endTime - startTime) / 10.0; - newStart = jlimit (0.0, thumbnail.getTotalLength() - (endTime - startTime), newStart); + double newStart = startTime - wheelIncrementX * (endTime - startTime) / 10.0; + newStart = jlimit (0.0, jmax (0.0, thumbnail.getTotalLength() - (endTime - startTime)), newStart); endTime = newStart + (endTime - startTime); startTime = newStart; + + if (wheelIncrementY != 0) + zoomSlider.setValue (zoomSlider.getValue() - wheelIncrementY); + repaint(); } } @@ -77,8 +90,7 @@ public: void paint (Graphics& g) { g.fillAll (Colours::white); - - g.setColour (Colours::mediumblue); + g.setColour (Colours::lightblue); if (thumbnail.getTotalLength() > 0) { @@ -112,10 +124,49 @@ public: demoPage->showFile (File (files[0])); } - AudioFormatManager formatManager; + void mouseDown (const MouseEvent& e) + { + mouseDrag (e); + } + + void mouseDrag (const MouseEvent& e) + { + transportSource.setPosition (jmax (0.0, xToTime ((float) e.x))); + } + + void mouseUp (const MouseEvent&) + { + transportSource.start(); + } + + void timerCallback() + { + currentPositionMarker.setVisible (transportSource.isPlaying() || isMouseButtonDown()); + + double currentPlayPosition = transportSource.getCurrentPosition(); + + currentPositionMarker.setRectangle (Rectangle (timeToX (currentPlayPosition) - 0.75f, 0, + 1.5f, (float) getHeight())); + } + +private: + AudioTransportSource& transportSource; + Slider& zoomSlider; AudioThumbnailCache thumbnailCache; AudioThumbnail thumbnail; double startTime, endTime; + + DrawableRectangle currentPositionMarker; + + float timeToX (const double time) const + { + return getWidth() * (float) ((time - startTime) / (endTime - startTime)); + } + + double xToTime (const float x) const + { + return (x / getWidth()) * (endTime - startTime) + startTime; + } }; //[/MiscUserDefs] @@ -140,15 +191,6 @@ AudioDemoPlaybackPage::AudioDemoPlaybackPage (AudioDeviceManager& deviceManager_ zoomLabel->setColour (TextEditor::textColourId, Colours::black); zoomLabel->setColour (TextEditor::backgroundColourId, Colour (0x0)); - addAndMakeVisible (thumbnail = new DemoThumbnailComp()); - - addAndMakeVisible (startStopButton = new TextButton (String::empty)); - startStopButton->setButtonText (L"Play/Stop"); - startStopButton->addListener (this); - startStopButton->setColour (TextButton::buttonColourId, Colour (0xff79ed7f)); - - addAndMakeVisible (fileTreeComp = new FileTreeComponent (directoryList)); - addAndMakeVisible (explanation = new Label (String::empty, L"Select an audio file in the treeview above, and this page will display its waveform, and let you play it..")); explanation->setFont (Font (14.0000f, Font::plain)); @@ -164,6 +206,14 @@ AudioDemoPlaybackPage::AudioDemoPlaybackPage (AudioDeviceManager& deviceManager_ zoomSlider->addListener (this); zoomSlider->setSkewFactor (2); + addAndMakeVisible (thumbnail = new DemoThumbnailComp (formatManager, transportSource, *zoomSlider)); + + addAndMakeVisible (startStopButton = new TextButton (String::empty)); + startStopButton->setButtonText (L"Play/Stop"); + startStopButton->addListener (this); + startStopButton->setColour (TextButton::buttonColourId, Colour (0xff79ed7f)); + + addAndMakeVisible (fileTreeComp = new FileTreeComponent (directoryList)); //[UserPreSize] //[/UserPreSize] @@ -172,6 +222,8 @@ AudioDemoPlaybackPage::AudioDemoPlaybackPage (AudioDeviceManager& deviceManager_ //[Constructor] You can add your own custom stuff here.. + formatManager.registerBasicFormats(); + directoryList.setDirectory (File::getSpecialLocation (File::userHomeDirectory), true, true); thread.startThread (3); @@ -186,8 +238,8 @@ AudioDemoPlaybackPage::AudioDemoPlaybackPage (AudioDeviceManager& deviceManager_ AudioDemoPlaybackPage::~AudioDemoPlaybackPage() { //[Destructor_pre]. You can add your own custom destruction code here.. - transportSource.setSource (0); - audioSourcePlayer.setSource (0); + transportSource.setSource (nullptr); + audioSourcePlayer.setSource (nullptr); deviceManager.removeAudioCallback (&audioSourcePlayer); fileTreeComp->removeListener (this); @@ -285,22 +337,19 @@ void AudioDemoPlaybackPage::loadFileIntoTransport (const File& audioFile) { // unload the previous file source and delete it.. transportSource.stop(); - transportSource.setSource (0); - currentAudioFileSource = 0; - - // get a format manager and set it up with the basic types (wav and aiff). - AudioFormatManager formatManager; - formatManager.registerBasicFormats(); + transportSource.setSource (nullptr); + currentAudioFileSource = nullptr; AudioFormatReader* reader = formatManager.createReaderFor (audioFile); - if (reader != 0) + if (reader != nullptr) { currentAudioFileSource = new AudioFormatReaderSource (reader, true); // ..and plug it into our transport source transportSource.setSource (currentAudioFileSource, 32768, // tells it to buffer this many samples ahead + &thread, // this is the background thread to use for reading-ahead reader->sampleRate); } } @@ -339,15 +388,6 @@ BEGIN_JUCER_METADATA edBkgCol="0" labelText="zoom:" editableSingleClick="0" editableDoubleClick="0" focusDiscardsChanges="0" fontname="Default font" fontsize="15" bold="0" italic="0" justification="34"/> - - -