| @@ -46,13 +46,11 @@ OBJECTS := \ | |||||
| $(OBJDIR)/jucer_AppearanceSettings_788d9889.o \ | $(OBJDIR)/jucer_AppearanceSettings_788d9889.o \ | ||||
| $(OBJDIR)/jucer_CommandLine_f35de107.o \ | $(OBJDIR)/jucer_CommandLine_f35de107.o \ | ||||
| $(OBJDIR)/jucer_DocumentEditorComponent_695dff1d.o \ | $(OBJDIR)/jucer_DocumentEditorComponent_695dff1d.o \ | ||||
| $(OBJDIR)/jucer_FilePreviewComponent_55512f53.o \ | |||||
| $(OBJDIR)/jucer_JuceUpdater_cf7865c4.o \ | $(OBJDIR)/jucer_JuceUpdater_cf7865c4.o \ | ||||
| $(OBJDIR)/jucer_Main_f8488f5b.o \ | $(OBJDIR)/jucer_Main_f8488f5b.o \ | ||||
| $(OBJDIR)/jucer_MainWindow_1e163aeb.o \ | $(OBJDIR)/jucer_MainWindow_1e163aeb.o \ | ||||
| $(OBJDIR)/jucer_OpenDocumentManager_4c72d210.o \ | $(OBJDIR)/jucer_OpenDocumentManager_4c72d210.o \ | ||||
| $(OBJDIR)/jucer_ConfigPage_99b07caa.o \ | $(OBJDIR)/jucer_ConfigPage_99b07caa.o \ | ||||
| $(OBJDIR)/jucer_GroupInformationComponent_631ccf01.o \ | |||||
| $(OBJDIR)/jucer_Module_3f7666a5.o \ | $(OBJDIR)/jucer_Module_3f7666a5.o \ | ||||
| $(OBJDIR)/jucer_NewFileWizard_b8a19ef8.o \ | $(OBJDIR)/jucer_NewFileWizard_b8a19ef8.o \ | ||||
| $(OBJDIR)/jucer_NewProjectWizard_7a15bf5d.o \ | $(OBJDIR)/jucer_NewProjectWizard_7a15bf5d.o \ | ||||
| @@ -108,11 +106,6 @@ $(OBJDIR)/jucer_DocumentEditorComponent_695dff1d.o: ../../Source/Application/juc | |||||
| @echo "Compiling jucer_DocumentEditorComponent.cpp" | @echo "Compiling jucer_DocumentEditorComponent.cpp" | ||||
| @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" | @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" | ||||
| $(OBJDIR)/jucer_FilePreviewComponent_55512f53.o: ../../Source/Application/jucer_FilePreviewComponent.cpp | |||||
| -@mkdir -p $(OBJDIR) | |||||
| @echo "Compiling jucer_FilePreviewComponent.cpp" | |||||
| @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" | |||||
| $(OBJDIR)/jucer_JuceUpdater_cf7865c4.o: ../../Source/Application/jucer_JuceUpdater.cpp | $(OBJDIR)/jucer_JuceUpdater_cf7865c4.o: ../../Source/Application/jucer_JuceUpdater.cpp | ||||
| -@mkdir -p $(OBJDIR) | -@mkdir -p $(OBJDIR) | ||||
| @echo "Compiling jucer_JuceUpdater.cpp" | @echo "Compiling jucer_JuceUpdater.cpp" | ||||
| @@ -138,11 +131,6 @@ $(OBJDIR)/jucer_ConfigPage_99b07caa.o: ../../Source/Project/jucer_ConfigPage.cpp | |||||
| @echo "Compiling jucer_ConfigPage.cpp" | @echo "Compiling jucer_ConfigPage.cpp" | ||||
| @$(CXX) $(CXXFLAGS) -o "$@" -c "$<" | @$(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 | $(OBJDIR)/jucer_Module_3f7666a5.o: ../../Source/Project/jucer_Module.cpp | ||||
| -@mkdir -p $(OBJDIR) | -@mkdir -p $(OBJDIR) | ||||
| @echo "Compiling jucer_Module.cpp" | @echo "Compiling jucer_Module.cpp" | ||||
| @@ -15,13 +15,11 @@ | |||||
| 357A6AA6960EF95D92929BEE = { isa = PBXBuildFile; fileRef = 441CFEA771BAA50E187342E9; }; | 357A6AA6960EF95D92929BEE = { isa = PBXBuildFile; fileRef = 441CFEA771BAA50E187342E9; }; | ||||
| 954A036F5DDB375DB23FFB3E = { isa = PBXBuildFile; fileRef = 0400CB0E056A1D840304D2DE; }; | 954A036F5DDB375DB23FFB3E = { isa = PBXBuildFile; fileRef = 0400CB0E056A1D840304D2DE; }; | ||||
| 3EB3D569250C4BA4CA9AF578 = { isa = PBXBuildFile; fileRef = C7608A3967D9AB9481848F2B; }; | 3EB3D569250C4BA4CA9AF578 = { isa = PBXBuildFile; fileRef = C7608A3967D9AB9481848F2B; }; | ||||
| 9A4D477F1924C31A52AF5C79 = { isa = PBXBuildFile; fileRef = F2FA27430D90E92F0C9EBEDF; }; | |||||
| B1A786B525176BEE309998EA = { isa = PBXBuildFile; fileRef = BE94248CF8069E6707174CDB; }; | B1A786B525176BEE309998EA = { isa = PBXBuildFile; fileRef = BE94248CF8069E6707174CDB; }; | ||||
| 95B44E6C74B1DED31DBE37EB = { isa = PBXBuildFile; fileRef = 8C52A3DDA62A746AA7A68535; }; | 95B44E6C74B1DED31DBE37EB = { isa = PBXBuildFile; fileRef = 8C52A3DDA62A746AA7A68535; }; | ||||
| AA9D0B8E23F3D87A23DE9F8A = { isa = PBXBuildFile; fileRef = 9069981E414A631B036CC9AC; }; | AA9D0B8E23F3D87A23DE9F8A = { isa = PBXBuildFile; fileRef = 9069981E414A631B036CC9AC; }; | ||||
| 244BA1BDA5FAA465EA3F9C6D = { isa = PBXBuildFile; fileRef = 2247EE920DF0610CAF9F4513; }; | 244BA1BDA5FAA465EA3F9C6D = { isa = PBXBuildFile; fileRef = 2247EE920DF0610CAF9F4513; }; | ||||
| D1A1998A202A88C617C9AB73 = { isa = PBXBuildFile; fileRef = E7F7033084AC10FB77B0F77A; }; | D1A1998A202A88C617C9AB73 = { isa = PBXBuildFile; fileRef = E7F7033084AC10FB77B0F77A; }; | ||||
| 349B4C837D996E71E08657A5 = { isa = PBXBuildFile; fileRef = 6FA01AEDB9DB70FD1EA6D380; }; | |||||
| 3FCA61C401007B243E2E9035 = { isa = PBXBuildFile; fileRef = F797071D88542C813CF7222A; }; | 3FCA61C401007B243E2E9035 = { isa = PBXBuildFile; fileRef = F797071D88542C813CF7222A; }; | ||||
| 5BC89E7905397ABECD25ACCD = { isa = PBXBuildFile; fileRef = F1163B7856FDABA413A88D90; }; | 5BC89E7905397ABECD25ACCD = { isa = PBXBuildFile; fileRef = F1163B7856FDABA413A88D90; }; | ||||
| FBE57B26FE59319AA2E8B59D = { isa = PBXBuildFile; fileRef = 69A5D13490A62DAE9A7D5A22; }; | FBE57B26FE59319AA2E8B59D = { isa = PBXBuildFile; fileRef = 69A5D13490A62DAE9A7D5A22; }; | ||||
| @@ -356,7 +354,6 @@ | |||||
| 6EE1847181635ED3C0838A4B = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LowLevelGraphicsPostScriptRenderer.h"; path = "../../../../modules/juce_graphics/contexts/juce_LowLevelGraphicsPostScriptRenderer.h"; 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"; }; | 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"; }; | 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"; }; | 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"; }; | 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"; }; | 70DC1D288DC6503E628A5A03 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_gui_basics.mm"; path = "../../../../modules/juce_gui_basics/juce_gui_basics.mm"; sourceTree = "SOURCE_ROOT"; }; | ||||
| @@ -562,6 +559,7 @@ | |||||
| BA5C7DE347A73A87F687703C = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ApplicationCommandTarget.h"; path = "../../../../modules/juce_gui_basics/commands/juce_ApplicationCommandTarget.h"; 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"; }; | 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"; }; | 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"; }; | 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"; }; | 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"; }; | BD7C18F07DE633B97B4478E7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_PropertyComponent.cpp"; path = "../../../../modules/juce_gui_basics/properties/juce_PropertyComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; | ||||
| @@ -601,7 +599,8 @@ | |||||
| C7E19F79947BEFC7DB7A9CE7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GlowEffect.cpp"; path = "../../../../modules/juce_graphics/effects/juce_GlowEffect.cpp"; 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"; }; | 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"; }; | 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"; }; | |||||
| 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"; }; | |||||
| C9871C46DEDD05103443DC33 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_NewLine.h"; path = "../../../../modules/juce_core/text/juce_NewLine.h"; 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"; }; | ||||
| C9DCA94BF8A4C583E5392755 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MultiTimer.cpp"; path = "../../../../modules/juce_events/timers/juce_MultiTimer.cpp"; 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"; }; | CA62F9F7C5F0D77D8E33D91F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SplashScreen.h"; path = "../../../../modules/juce_gui_extra/misc/juce_SplashScreen.h"; sourceTree = "SOURCE_ROOT"; }; | ||||
| @@ -622,48 +621,46 @@ | |||||
| CF8011B3C67B609032974DA5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_NewCppFileTemplate.cpp"; path = "../../Source/BinaryData/jucer_NewCppFileTemplate.cpp"; sourceTree = "SOURCE_ROOT"; }; | 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; }; | D00F311BFC3C2625C457CB9B = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Carbon.framework; path = System/Library/Frameworks/Carbon.framework; sourceTree = SDKROOT; }; | ||||
| D0F1614CC861E8E0B59B7A06 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Messaging.cpp"; path = "../../../../modules/juce_events/native/juce_linux_Messaging.cpp"; 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"; }; | D141433D3FE81F20490DE928 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Desktop.h"; path = "../../../../modules/juce_gui_basics/components/juce_Desktop.h"; sourceTree = "SOURCE_ROOT"; }; | ||||
| D1F9B0E9F5D54FE48BEB46EA = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = System/Library/Frameworks/Cocoa.framework; sourceTree = SDKROOT; }; | D1F9B0E9F5D54FE48BEB46EA = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = System/Library/Frameworks/Cocoa.framework; sourceTree = SDKROOT; }; | ||||
| D253F74B7F5734984E568CA7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Files.cpp"; path = "../../../../modules/juce_core/native/juce_linux_Files.cpp"; 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"; }; | 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"; }; | 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"; }; | 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"; }; | 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"; }; | 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"; }; | 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"; }; | 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"; }; | D678882D133090214AF681BC = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ThreadLocalValue.h"; path = "../../../../modules/juce_core/threads/juce_ThreadLocalValue.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"; }; | |||||
| D6C91E2BF537F75A80F5C1DB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ListBox.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_ListBox.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"; }; | 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"; }; | D782DA091AD3ECE158FC6A5F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ButtonPropertyComponent.h"; path = "../../../../modules/juce_gui_basics/properties/juce_ButtonPropertyComponent.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"; }; | |||||
| D9E59DE07A815AB303A297D9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_data_structures.mm"; path = "../../../../modules/juce_data_structures/juce_data_structures.mm"; 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"; }; | |||||
| D9B077E2ECDDA94961E134D7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_StringPairArray.h"; path = "../../../../modules/juce_core/text/juce_StringPairArray.h"; 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"; }; | 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"; }; | |||||
| 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"; }; | |||||
| DE5F3C9EF6BFFDE73AF9E7FC = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DirectoryContentsDisplayComponent.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_DirectoryContentsDisplayComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; | |||||
| E5D6C36496F5BC84D7213BE8 = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = System/Library/Frameworks/QuartzCore.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; }; | 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"; }; | 25F52316D256B4534BED16D1 = { isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Introjucer.app; sourceTree = "BUILT_PRODUCTS_DIR"; }; | ||||
| BBA6060656F685ED7FA52045 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_TreeViewTypes.h"; path = "../../Source/Project/jucer_TreeViewTypes.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"; }; | |||||
| D10D51A0A2D63F38B4D86A60 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_ResourceFile.cpp"; path = "../../Source/Project Saving/jucer_ResourceFile.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"; }; | |||||
| 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"; }; | |||||
| D6C91E2BF537F75A80F5C1DB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ListBox.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_ListBox.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"; }; | |||||
| C90C66C5727759D5CBD5FB07 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AbstractFifo.cpp"; path = "../../../../modules/juce_core/containers/juce_AbstractFifo.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"; }; | |||||
| D75EAC16FAECCC51E3669193 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ApplicationCommandInfo.h"; path = "../../../../modules/juce_gui_basics/commands/juce_ApplicationCommandInfo.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"; }; | 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"; }; | 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"; }; | 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"; }; | DB876F7873F42DC685A58CA7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_JPEGLoader.cpp"; path = "../../../../modules/juce_graphics/image_formats/juce_JPEGLoader.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"; }; | 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"; }; | 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"; }; | 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"; }; | 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"; }; | DF7BB5B6B394EDEEF5F5B4B8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CallbackMessage.h"; path = "../../../../modules/juce_events/messages/juce_CallbackMessage.h"; sourceTree = "SOURCE_ROOT"; }; | ||||
| @@ -719,7 +716,6 @@ | |||||
| F2499004037A1C1D8FEE1FD6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ResizableEdgeComponent.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_ResizableEdgeComponent.cpp"; 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"; }; | 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"; }; | 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"; }; | 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"; }; | 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"; }; | F591F5E5E162D4667AC26419 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_JSON.cpp"; path = "../../../../modules/juce_core/json/juce_JSON.cpp"; sourceTree = "SOURCE_ROOT"; }; | ||||
| @@ -760,7 +756,6 @@ | |||||
| 6E6140969908E7619F858740, | 6E6140969908E7619F858740, | ||||
| C7608A3967D9AB9481848F2B, | C7608A3967D9AB9481848F2B, | ||||
| E65A820D34BF39478B7C5925, | E65A820D34BF39478B7C5925, | ||||
| F2FA27430D90E92F0C9EBEDF, | |||||
| D526C38D581425949BA0E4AC, | D526C38D581425949BA0E4AC, | ||||
| F03E2BDD36E6F4F53AB767A8, | F03E2BDD36E6F4F53AB767A8, | ||||
| BE94248CF8069E6707174CDB, | BE94248CF8069E6707174CDB, | ||||
| @@ -774,7 +769,6 @@ | |||||
| 93D03B2BC76998A3BDA747E8, | 93D03B2BC76998A3BDA747E8, | ||||
| E7F7033084AC10FB77B0F77A, | E7F7033084AC10FB77B0F77A, | ||||
| C2080119AEDFDE0D477756FA, | C2080119AEDFDE0D477756FA, | ||||
| 6FA01AEDB9DB70FD1EA6D380, | |||||
| C7B47372A9D5970E3D9A5400, | C7B47372A9D5970E3D9A5400, | ||||
| F797071D88542C813CF7222A, | F797071D88542C813CF7222A, | ||||
| 7211101FFA28400ADBB1D47A, | 7211101FFA28400ADBB1D47A, | ||||
| @@ -1686,13 +1680,11 @@ | |||||
| 357A6AA6960EF95D92929BEE, | 357A6AA6960EF95D92929BEE, | ||||
| 954A036F5DDB375DB23FFB3E, | 954A036F5DDB375DB23FFB3E, | ||||
| 3EB3D569250C4BA4CA9AF578, | 3EB3D569250C4BA4CA9AF578, | ||||
| 9A4D477F1924C31A52AF5C79, | |||||
| B1A786B525176BEE309998EA, | B1A786B525176BEE309998EA, | ||||
| 95B44E6C74B1DED31DBE37EB, | 95B44E6C74B1DED31DBE37EB, | ||||
| AA9D0B8E23F3D87A23DE9F8A, | AA9D0B8E23F3D87A23DE9F8A, | ||||
| 244BA1BDA5FAA465EA3F9C6D, | 244BA1BDA5FAA465EA3F9C6D, | ||||
| D1A1998A202A88C617C9AB73, | D1A1998A202A88C617C9AB73, | ||||
| 349B4C837D996E71E08657A5, | |||||
| 3FCA61C401007B243E2E9035, | 3FCA61C401007B243E2E9035, | ||||
| 5BC89E7905397ABECD25ACCD, | 5BC89E7905397ABECD25ACCD, | ||||
| FBE57B26FE59319AA2E8B59D, | FBE57B26FE59319AA2E8B59D, | ||||
| @@ -139,7 +139,6 @@ | |||||
| <File RelativePath="..\..\Source\Application\jucer_CommonHeaders.h"/> | <File RelativePath="..\..\Source\Application\jucer_CommonHeaders.h"/> | ||||
| <File RelativePath="..\..\Source\Application\jucer_DocumentEditorComponent.cpp"/> | <File RelativePath="..\..\Source\Application\jucer_DocumentEditorComponent.cpp"/> | ||||
| <File RelativePath="..\..\Source\Application\jucer_DocumentEditorComponent.h"/> | <File RelativePath="..\..\Source\Application\jucer_DocumentEditorComponent.h"/> | ||||
| <File RelativePath="..\..\Source\Application\jucer_FilePreviewComponent.cpp"/> | |||||
| <File RelativePath="..\..\Source\Application\jucer_FilePreviewComponent.h"/> | <File RelativePath="..\..\Source\Application\jucer_FilePreviewComponent.h"/> | ||||
| <File RelativePath="..\..\Source\jucer_Headers.h"/> | <File RelativePath="..\..\Source\jucer_Headers.h"/> | ||||
| <File RelativePath="..\..\Source\Application\jucer_JuceUpdater.cpp"/> | <File RelativePath="..\..\Source\Application\jucer_JuceUpdater.cpp"/> | ||||
| @@ -154,7 +153,6 @@ | |||||
| <File RelativePath="..\..\Source\Project\jucer_AudioPluginModule.h"/> | <File RelativePath="..\..\Source\Project\jucer_AudioPluginModule.h"/> | ||||
| <File RelativePath="..\..\Source\Project\jucer_ConfigPage.cpp"/> | <File RelativePath="..\..\Source\Project\jucer_ConfigPage.cpp"/> | ||||
| <File RelativePath="..\..\Source\Project\jucer_ConfigPage.h"/> | <File RelativePath="..\..\Source\Project\jucer_ConfigPage.h"/> | ||||
| <File RelativePath="..\..\Source\Project\jucer_GroupInformationComponent.cpp"/> | |||||
| <File RelativePath="..\..\Source\Project\jucer_GroupInformationComponent.h"/> | <File RelativePath="..\..\Source\Project\jucer_GroupInformationComponent.h"/> | ||||
| <File RelativePath="..\..\Source\Project\jucer_Module.cpp"/> | <File RelativePath="..\..\Source\Project\jucer_Module.cpp"/> | ||||
| <File RelativePath="..\..\Source\Project\jucer_Module.h"/> | <File RelativePath="..\..\Source\Project\jucer_Module.h"/> | ||||
| @@ -139,7 +139,6 @@ | |||||
| <File RelativePath="..\..\Source\Application\jucer_CommonHeaders.h"/> | <File RelativePath="..\..\Source\Application\jucer_CommonHeaders.h"/> | ||||
| <File RelativePath="..\..\Source\Application\jucer_DocumentEditorComponent.cpp"/> | <File RelativePath="..\..\Source\Application\jucer_DocumentEditorComponent.cpp"/> | ||||
| <File RelativePath="..\..\Source\Application\jucer_DocumentEditorComponent.h"/> | <File RelativePath="..\..\Source\Application\jucer_DocumentEditorComponent.h"/> | ||||
| <File RelativePath="..\..\Source\Application\jucer_FilePreviewComponent.cpp"/> | |||||
| <File RelativePath="..\..\Source\Application\jucer_FilePreviewComponent.h"/> | <File RelativePath="..\..\Source\Application\jucer_FilePreviewComponent.h"/> | ||||
| <File RelativePath="..\..\Source\jucer_Headers.h"/> | <File RelativePath="..\..\Source\jucer_Headers.h"/> | ||||
| <File RelativePath="..\..\Source\Application\jucer_JuceUpdater.cpp"/> | <File RelativePath="..\..\Source\Application\jucer_JuceUpdater.cpp"/> | ||||
| @@ -154,7 +153,6 @@ | |||||
| <File RelativePath="..\..\Source\Project\jucer_AudioPluginModule.h"/> | <File RelativePath="..\..\Source\Project\jucer_AudioPluginModule.h"/> | ||||
| <File RelativePath="..\..\Source\Project\jucer_ConfigPage.cpp"/> | <File RelativePath="..\..\Source\Project\jucer_ConfigPage.cpp"/> | ||||
| <File RelativePath="..\..\Source\Project\jucer_ConfigPage.h"/> | <File RelativePath="..\..\Source\Project\jucer_ConfigPage.h"/> | ||||
| <File RelativePath="..\..\Source\Project\jucer_GroupInformationComponent.cpp"/> | |||||
| <File RelativePath="..\..\Source\Project\jucer_GroupInformationComponent.h"/> | <File RelativePath="..\..\Source\Project\jucer_GroupInformationComponent.h"/> | ||||
| <File RelativePath="..\..\Source\Project\jucer_Module.cpp"/> | <File RelativePath="..\..\Source\Project\jucer_Module.cpp"/> | ||||
| <File RelativePath="..\..\Source\Project\jucer_Module.h"/> | <File RelativePath="..\..\Source\Project\jucer_Module.h"/> | ||||
| @@ -129,13 +129,11 @@ | |||||
| <ClCompile Include="..\..\Source\Application\jucer_AppearanceSettings.cpp"/> | <ClCompile Include="..\..\Source\Application\jucer_AppearanceSettings.cpp"/> | ||||
| <ClCompile Include="..\..\Source\Application\jucer_CommandLine.cpp"/> | <ClCompile Include="..\..\Source\Application\jucer_CommandLine.cpp"/> | ||||
| <ClCompile Include="..\..\Source\Application\jucer_DocumentEditorComponent.cpp"/> | <ClCompile Include="..\..\Source\Application\jucer_DocumentEditorComponent.cpp"/> | ||||
| <ClCompile Include="..\..\Source\Application\jucer_FilePreviewComponent.cpp"/> | |||||
| <ClCompile Include="..\..\Source\Application\jucer_JuceUpdater.cpp"/> | <ClCompile Include="..\..\Source\Application\jucer_JuceUpdater.cpp"/> | ||||
| <ClCompile Include="..\..\Source\Application\jucer_Main.cpp"/> | <ClCompile Include="..\..\Source\Application\jucer_Main.cpp"/> | ||||
| <ClCompile Include="..\..\Source\Application\jucer_MainWindow.cpp"/> | <ClCompile Include="..\..\Source\Application\jucer_MainWindow.cpp"/> | ||||
| <ClCompile Include="..\..\Source\Application\jucer_OpenDocumentManager.cpp"/> | <ClCompile Include="..\..\Source\Application\jucer_OpenDocumentManager.cpp"/> | ||||
| <ClCompile Include="..\..\Source\Project\jucer_ConfigPage.cpp"/> | <ClCompile Include="..\..\Source\Project\jucer_ConfigPage.cpp"/> | ||||
| <ClCompile Include="..\..\Source\Project\jucer_GroupInformationComponent.cpp"/> | |||||
| <ClCompile Include="..\..\Source\Project\jucer_Module.cpp"/> | <ClCompile Include="..\..\Source\Project\jucer_Module.cpp"/> | ||||
| <ClCompile Include="..\..\Source\Project\jucer_NewFileWizard.cpp"/> | <ClCompile Include="..\..\Source\Project\jucer_NewFileWizard.cpp"/> | ||||
| <ClCompile Include="..\..\Source\Project\jucer_NewProjectWizard.cpp"/> | <ClCompile Include="..\..\Source\Project\jucer_NewProjectWizard.cpp"/> | ||||
| @@ -238,9 +238,6 @@ | |||||
| <ClCompile Include="..\..\Source\Application\jucer_DocumentEditorComponent.cpp"> | <ClCompile Include="..\..\Source\Application\jucer_DocumentEditorComponent.cpp"> | ||||
| <Filter>The Introjucer\Application</Filter> | <Filter>The Introjucer\Application</Filter> | ||||
| </ClCompile> | </ClCompile> | ||||
| <ClCompile Include="..\..\Source\Application\jucer_FilePreviewComponent.cpp"> | |||||
| <Filter>The Introjucer\Application</Filter> | |||||
| </ClCompile> | |||||
| <ClCompile Include="..\..\Source\Application\jucer_JuceUpdater.cpp"> | <ClCompile Include="..\..\Source\Application\jucer_JuceUpdater.cpp"> | ||||
| <Filter>The Introjucer\Application</Filter> | <Filter>The Introjucer\Application</Filter> | ||||
| </ClCompile> | </ClCompile> | ||||
| @@ -256,9 +253,6 @@ | |||||
| <ClCompile Include="..\..\Source\Project\jucer_ConfigPage.cpp"> | <ClCompile Include="..\..\Source\Project\jucer_ConfigPage.cpp"> | ||||
| <Filter>The Introjucer\Project</Filter> | <Filter>The Introjucer\Project</Filter> | ||||
| </ClCompile> | </ClCompile> | ||||
| <ClCompile Include="..\..\Source\Project\jucer_GroupInformationComponent.cpp"> | |||||
| <Filter>The Introjucer\Project</Filter> | |||||
| </ClCompile> | |||||
| <ClCompile Include="..\..\Source\Project\jucer_Module.cpp"> | <ClCompile Include="..\..\Source\Project\jucer_Module.cpp"> | ||||
| <Filter>The Introjucer\Project</Filter> | <Filter>The Introjucer\Project</Filter> | ||||
| </ClCompile> | </ClCompile> | ||||
| @@ -83,8 +83,6 @@ | |||||
| resource="0" file="Source/Application/jucer_DocumentEditorComponent.cpp"/> | resource="0" file="Source/Application/jucer_DocumentEditorComponent.cpp"/> | ||||
| <FILE id="tyrTEq" name="jucer_DocumentEditorComponent.h" compile="0" | <FILE id="tyrTEq" name="jucer_DocumentEditorComponent.h" compile="0" | ||||
| resource="0" file="Source/Application/jucer_DocumentEditorComponent.h"/> | resource="0" file="Source/Application/jucer_DocumentEditorComponent.h"/> | ||||
| <FILE id="jGu5u7N" name="jucer_FilePreviewComponent.cpp" compile="1" | |||||
| resource="0" file="Source/Application/jucer_FilePreviewComponent.cpp"/> | |||||
| <FILE id="C4MqR1U" name="jucer_FilePreviewComponent.h" compile="0" | <FILE id="C4MqR1U" name="jucer_FilePreviewComponent.h" compile="0" | ||||
| resource="0" file="Source/Application/jucer_FilePreviewComponent.h"/> | resource="0" file="Source/Application/jucer_FilePreviewComponent.h"/> | ||||
| <FILE id="qXOJtpg" name="jucer_Headers.h" compile="0" resource="0" | <FILE id="qXOJtpg" name="jucer_Headers.h" compile="0" resource="0" | ||||
| @@ -110,8 +108,6 @@ | |||||
| file="Source/Project/jucer_ConfigPage.cpp"/> | file="Source/Project/jucer_ConfigPage.cpp"/> | ||||
| <FILE id="tlj7HT" name="jucer_ConfigPage.h" compile="0" resource="0" | <FILE id="tlj7HT" name="jucer_ConfigPage.h" compile="0" resource="0" | ||||
| file="Source/Project/jucer_ConfigPage.h"/> | file="Source/Project/jucer_ConfigPage.h"/> | ||||
| <FILE id="Wx7kXq7" name="jucer_GroupInformationComponent.cpp" compile="1" | |||||
| resource="0" file="Source/Project/jucer_GroupInformationComponent.cpp"/> | |||||
| <FILE id="sQjHbVN" name="jucer_GroupInformationComponent.h" compile="0" | <FILE id="sQjHbVN" name="jucer_GroupInformationComponent.h" compile="0" | ||||
| resource="0" file="Source/Project/jucer_GroupInformationComponent.h"/> | resource="0" file="Source/Project/jucer_GroupInformationComponent.h"/> | ||||
| <FILE id="MJkOAX" name="jucer_Module.cpp" compile="1" resource="0" | <FILE id="MJkOAX" name="jucer_Module.cpp" compile="1" resource="0" | ||||
| @@ -26,16 +26,38 @@ | |||||
| #include "jucer_Application.h" | #include "jucer_Application.h" | ||||
| #include "jucer_AppearanceSettings.h" | #include "jucer_AppearanceSettings.h" | ||||
| namespace AppearanceColours | |||||
| { | |||||
| struct ColourInfo | |||||
| { | |||||
| const char* name; | |||||
| uint32 colourID; | |||||
| bool mustBeOpaque; | |||||
| }; | |||||
| static const ColourInfo colours[] = | |||||
| { | |||||
| { "Code Background", CodeEditorComponent::backgroundColourId, true }, | |||||
| { "Line Number Bkgd", CodeEditorComponent::lineNumberBackgroundId, false }, | |||||
| { "Line Numbers", CodeEditorComponent::lineNumberTextId, false }, | |||||
| { "Plain Text", CodeEditorComponent::defaultTextColourId, false }, | |||||
| { "Selected Text Bkgd", CodeEditorComponent::highlightColourId, false }, | |||||
| { "Caret", CaretComponent::caretColourId, false }, | |||||
| { "Main Window Bkgd", mainBackgroundColourId, true }, | |||||
| { "Project Panel Bkgd", projectPanelBackgroundColourId, true }, | |||||
| { "Treeview Highlight", treeviewHighlightColourId, false } | |||||
| }; | |||||
| } | |||||
| //============================================================================== | //============================================================================== | ||||
| AppearanceSettings::AppearanceSettings (const CodeEditorComponent& editor) | AppearanceSettings::AppearanceSettings (const CodeEditorComponent& editor) | ||||
| : settings ("COLOUR_SCHEME") | : settings ("COLOUR_SCHEME") | ||||
| { | { | ||||
| getColourValue ("Background") = editor.findColour (CodeEditorComponent::backgroundColourId).toString(); | |||||
| getColourValue ("Line Number Bkgd") = editor.findColour (CodeEditorComponent::lineNumberBackgroundId).toString(); | |||||
| getColourValue ("Line Numbers") = editor.findColour (CodeEditorComponent::lineNumberTextId).toString(); | |||||
| getColourValue ("Plain Text") = editor.findColour (CodeEditorComponent::defaultTextColourId).toString(); | |||||
| getColourValue ("Selected Background") = editor.findColour (CodeEditorComponent::highlightColourId).toString(); | |||||
| IntrojucerLookAndFeel lf; | |||||
| for (int i = 0; i < sizeof (AppearanceColours::colours) / sizeof (AppearanceColours::colours[0]); ++i) | |||||
| getColourValue (AppearanceColours::colours[i].name) = lf.findColour (AppearanceColours::colours[i].colourID).toString(); | |||||
| const CodeEditorComponent::ColourScheme cs (editor.getColourScheme()); | const CodeEditorComponent::ColourScheme cs (editor.getColourScheme()); | ||||
| @@ -48,6 +70,8 @@ AppearanceSettings::AppearanceSettings (const CodeEditorComponent& editor) | |||||
| Font f (editor.getFont()); | Font f (editor.getFont()); | ||||
| f.setTypefaceName (f.getTypeface()->getName()); | f.setTypefaceName (f.getTypeface()->getName()); | ||||
| getCodeFontValue() = f.toString(); | getCodeFontValue() = f.toString(); | ||||
| settings.addListener (this); | |||||
| } | } | ||||
| bool AppearanceSettings::readFromXML (const XmlElement& xml) | bool AppearanceSettings::readFromXML (const XmlElement& xml) | ||||
| @@ -97,6 +121,27 @@ StringArray AppearanceSettings::getColourNames() const | |||||
| return s; | return s; | ||||
| } | } | ||||
| void AppearanceSettings::updateColourScheme() | |||||
| { | |||||
| applyToLookAndFeel (LookAndFeel::getDefaultLookAndFeel()); | |||||
| JucerApplication::getApp().mainWindowList.sendLookAndFeelChange(); | |||||
| } | |||||
| void AppearanceSettings::applyToLookAndFeel (LookAndFeel& lf) const | |||||
| { | |||||
| for (int i = 0; i < sizeof (AppearanceColours::colours) / sizeof (AppearanceColours::colours[0]); ++i) | |||||
| { | |||||
| Colour col; | |||||
| if (getColour (AppearanceColours::colours[i].name, col)) | |||||
| { | |||||
| if (AppearanceColours::colours[i].mustBeOpaque) | |||||
| col = Colours::white.overlaidWith (col); | |||||
| lf.setColour (AppearanceColours::colours[i].colourID, col); | |||||
| } | |||||
| } | |||||
| } | |||||
| void AppearanceSettings::applyToCodeEditor (CodeEditorComponent& editor) const | void AppearanceSettings::applyToCodeEditor (CodeEditorComponent& editor) const | ||||
| { | { | ||||
| CodeEditorComponent::ColourScheme cs (editor.getColourScheme()); | CodeEditorComponent::ColourScheme cs (editor.getColourScheme()); | ||||
| @@ -108,20 +153,6 @@ void AppearanceSettings::applyToCodeEditor (CodeEditorComponent& editor) const | |||||
| } | } | ||||
| editor.setColourScheme (cs); | editor.setColourScheme (cs); | ||||
| Colour col; | |||||
| if (getColour ("Plain Text", col)) editor.setColour (CodeEditorComponent::defaultTextColourId, col); | |||||
| if (getColour ("Selected Background", col)) editor.setColour (CodeEditorComponent::highlightColourId, col); | |||||
| if (getColour ("Line Number Bkgd", col)) editor.setColour (CodeEditorComponent::lineNumberBackgroundId, col); | |||||
| if (getColour ("Line Numbers", col)) editor.setColour (CodeEditorComponent::lineNumberTextId, col); | |||||
| if (getColour ("Background", col)) | |||||
| { | |||||
| col = Colours::white.overlaidWith (col); | |||||
| editor.setColour (CodeEditorComponent::backgroundColourId, col); | |||||
| editor.setColour (CaretComponent::caretColourId, col.contrasting()); | |||||
| } | |||||
| editor.setFont (getCodeFont()); | editor.setFont (getCodeFont()); | ||||
| } | } | ||||
| @@ -375,3 +406,19 @@ Component* AppearanceSettings::createEditorWindow() | |||||
| { | { | ||||
| return new AppearanceEditor::Window(); | return new AppearanceEditor::Window(); | ||||
| } | } | ||||
| //============================================================================== | |||||
| IntrojucerLookAndFeel::IntrojucerLookAndFeel() | |||||
| { | |||||
| setColour (mainBackgroundColourId, Colour::greyLevel (0.8f)); | |||||
| setColour (projectPanelBackgroundColourId, Colour::greyLevel (0.93f)); | |||||
| setColour (treeviewHighlightColourId, Colour (0x401111ee)); | |||||
| } | |||||
| Rectangle<int> IntrojucerLookAndFeel::getPropertyComponentContentPosition (PropertyComponent& component) | |||||
| { | |||||
| if (component.findParentComponentOfClass<AppearanceEditor::EditorPanel>() != nullptr) | |||||
| return component.getLocalBounds().reduced (1, 1).removeFromRight (component.getWidth() / 2); | |||||
| return LookAndFeel::getPropertyComponentContentPosition (component); | |||||
| } | |||||
| @@ -27,7 +27,7 @@ | |||||
| #define __JUCER_APPEARANCESETTINGS_H_34D762C7__ | #define __JUCER_APPEARANCESETTINGS_H_34D762C7__ | ||||
| class AppearanceSettings | |||||
| class AppearanceSettings : private ValueTree::Listener | |||||
| { | { | ||||
| public: | public: | ||||
| AppearanceSettings (const CodeEditorComponent& editorToCopyFrom); | AppearanceSettings (const CodeEditorComponent& editorToCopyFrom); | ||||
| @@ -36,6 +36,7 @@ public: | |||||
| bool readFromXML (const XmlElement&); | bool readFromXML (const XmlElement&); | ||||
| bool writeToFile (const File& file) const; | bool writeToFile (const File& file) const; | ||||
| void applyToLookAndFeel (LookAndFeel&) const; | |||||
| void applyToCodeEditor (CodeEditorComponent& editor) const; | void applyToCodeEditor (CodeEditorComponent& editor) const; | ||||
| StringArray getColourNames() const; | StringArray getColourNames() const; | ||||
| @@ -48,6 +49,32 @@ public: | |||||
| ValueTree settings; | ValueTree settings; | ||||
| static Component* createEditorWindow(); | static Component* createEditorWindow(); | ||||
| static void intialiseLookAndFeel (LookAndFeel&); | |||||
| private: | |||||
| void updateColourScheme(); | |||||
| void valueTreePropertyChanged (ValueTree&, const Identifier&) { updateColourScheme(); } | |||||
| void valueTreeChildAdded (ValueTree&, ValueTree&) { updateColourScheme(); } | |||||
| void valueTreeChildRemoved (ValueTree&, ValueTree&) { updateColourScheme(); } | |||||
| void valueTreeChildOrderChanged (ValueTree&) { updateColourScheme(); } | |||||
| void valueTreeParentChanged (ValueTree&) { updateColourScheme(); } | |||||
| void valueTreeRedirected (ValueTree&) { updateColourScheme(); } | |||||
| }; | |||||
| //============================================================================== | |||||
| class IntrojucerLookAndFeel : public LookAndFeel | |||||
| { | |||||
| public: | |||||
| IntrojucerLookAndFeel(); | |||||
| void drawStretchableLayoutResizerBar (Graphics& g, int /*w*/, int /*h*/, bool /*isVerticalBar*/, bool isMouseOver, bool isMouseDragging) | |||||
| { | |||||
| if (isMouseOver || isMouseDragging) | |||||
| g.fillAll (Colours::grey.withAlpha (0.4f)); | |||||
| } | |||||
| Rectangle<int> getPropertyComponentContentPosition (PropertyComponent& component); | |||||
| }; | }; | ||||
| @@ -44,6 +44,10 @@ public: | |||||
| //============================================================================== | //============================================================================== | ||||
| void initialise (const String& commandLine) | void initialise (const String& commandLine) | ||||
| { | { | ||||
| LookAndFeel::setDefaultLookAndFeel (&lookAndFeel); | |||||
| settings.initialise(); | |||||
| if (commandLine.isNotEmpty()) | if (commandLine.isNotEmpty()) | ||||
| { | { | ||||
| const int appReturnCode = performCommandLine (commandLine); | const int appReturnCode = performCommandLine (commandLine); | ||||
| @@ -92,6 +96,8 @@ public: | |||||
| openDocumentManager.clear(); | openDocumentManager.clear(); | ||||
| commandManager = nullptr; | commandManager = nullptr; | ||||
| settings.flush(); | settings.flush(); | ||||
| LookAndFeel::setDefaultLookAndFeel (nullptr); | |||||
| } | } | ||||
| //============================================================================== | //============================================================================== | ||||
| @@ -439,6 +445,8 @@ public: | |||||
| } | } | ||||
| //============================================================================== | //============================================================================== | ||||
| IntrojucerLookAndFeel lookAndFeel; | |||||
| StoredSettings settings; | StoredSettings settings; | ||||
| Icons icons; | Icons icons; | ||||
| @@ -48,4 +48,11 @@ const char* const sourceFileExtensions = "cpp;mm;m;c;cc;cxx"; | |||||
| const char* const headerFileExtensions = "h;hpp;hxx"; | const char* const headerFileExtensions = "h;hpp;hxx"; | ||||
| const char* const sourceOrHeaderFileExtensions = "cpp;mm;m;c;cc;cxx;h;hpp;hxx"; | const char* const sourceOrHeaderFileExtensions = "cpp;mm;m;c;cc;cxx;h;hpp;hxx"; | ||||
| enum ColourIds | |||||
| { | |||||
| mainBackgroundColourId = 0x2340000, | |||||
| projectPanelBackgroundColourId = 0x2340001, | |||||
| treeviewHighlightColourId = 0x2340002, | |||||
| }; | |||||
| #endif // __JUCER_COMMONHEADERS_JUCEHEADER__ | #endif // __JUCER_COMMONHEADERS_JUCEHEADER__ | ||||
| @@ -1,77 +0,0 @@ | |||||
| /* | |||||
| ============================================================================== | |||||
| 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_Headers.h" | |||||
| #include "jucer_FilePreviewComponent.h" | |||||
| //============================================================================== | |||||
| ItemPreviewComponent::ItemPreviewComponent (const File& file_) | |||||
| : file (file_) | |||||
| { | |||||
| tryToLoadImage(); | |||||
| } | |||||
| void ItemPreviewComponent::tryToLoadImage() | |||||
| { | |||||
| facts.clear(); | |||||
| facts.add (file.getFullPathName()); | |||||
| image = Image(); | |||||
| ScopedPointer <InputStream> input (file.createInputStream()); | |||||
| if (input != nullptr) | |||||
| { | |||||
| const int64 totalSize = input->getTotalLength(); | |||||
| ImageFileFormat* format = ImageFileFormat::findImageFormatForStream (*input); | |||||
| input = nullptr; | |||||
| String formatName; | |||||
| if (format != nullptr) | |||||
| formatName = " " + format->getFormatName(); | |||||
| image = ImageCache::getFromFile (file); | |||||
| if (image.isValid()) | |||||
| facts.add (String (image.getWidth()) + " x " + String (image.getHeight()) + formatName); | |||||
| if (totalSize > 0) | |||||
| facts.add (File::descriptionOfSizeInBytes (totalSize)); | |||||
| } | |||||
| facts.removeEmptyStrings (true); | |||||
| } | |||||
| void ItemPreviewComponent::paint (Graphics& g) | |||||
| { | |||||
| g.drawImageWithin (image, 2, 22, getWidth() - 4, getHeight() - 24, | |||||
| RectanglePlacement::centred | RectanglePlacement::onlyReduceInSize, | |||||
| false); | |||||
| g.setFont (Font (15.0f, Font::bold)); | |||||
| g.setColour (Colours::white); | |||||
| g.drawMultiLineText (facts.joinIntoString ("\n"), | |||||
| 10, 15, getWidth() - 16); | |||||
| } | |||||
| @@ -33,17 +33,58 @@ | |||||
| class ItemPreviewComponent : public Component | class ItemPreviewComponent : public Component | ||||
| { | { | ||||
| public: | public: | ||||
| //============================================================================== | |||||
| ItemPreviewComponent (const File& file); | |||||
| void paint (Graphics& g); | |||||
| ItemPreviewComponent (const File& file_) | |||||
| : file (file_) | |||||
| { | |||||
| tryToLoadImage(); | |||||
| } | |||||
| void paint (Graphics& g) | |||||
| { | |||||
| g.drawImageWithin (image, 2, 22, getWidth() - 4, getHeight() - 24, | |||||
| RectanglePlacement::centred | RectanglePlacement::onlyReduceInSize, | |||||
| false); | |||||
| g.setFont (Font (14.0f, Font::bold)); | |||||
| g.setColour (findColour (mainBackgroundColourId).contrasting()); | |||||
| g.drawMultiLineText (facts.joinIntoString ("\n"), | |||||
| 10, 15, getWidth() - 16); | |||||
| } | |||||
| private: | private: | ||||
| StringArray facts; | StringArray facts; | ||||
| File file; | File file; | ||||
| Image image; | Image image; | ||||
| void tryToLoadImage(); | |||||
| void tryToLoadImage() | |||||
| { | |||||
| facts.clear(); | |||||
| facts.add (file.getFullPathName()); | |||||
| image = Image(); | |||||
| ScopedPointer <InputStream> input (file.createInputStream()); | |||||
| if (input != nullptr) | |||||
| { | |||||
| const int64 totalSize = input->getTotalLength(); | |||||
| ImageFileFormat* format = ImageFileFormat::findImageFormatForStream (*input); | |||||
| input = nullptr; | |||||
| String formatName; | |||||
| if (format != nullptr) | |||||
| formatName = " " + format->getFormatName(); | |||||
| image = ImageCache::getFromFile (file); | |||||
| if (image.isValid()) | |||||
| facts.add (String (image.getWidth()) + " x " + String (image.getHeight()) + formatName); | |||||
| if (totalSize > 0) | |||||
| facts.add (File::descriptionOfSizeInBytes (totalSize)); | |||||
| } | |||||
| facts.removeEmptyStrings (true); | |||||
| } | |||||
| JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (ItemPreviewComponent); | JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (ItemPreviewComponent); | ||||
| }; | }; | ||||
| @@ -486,3 +486,9 @@ void MainWindowList::reopenLastProjects() | |||||
| for (int i = 0; i < projects.size(); ++ i) | for (int i = 0; i < projects.size(); ++ i) | ||||
| openFile (projects.getReference(i)); | openFile (projects.getReference(i)); | ||||
| } | } | ||||
| void MainWindowList::sendLookAndFeelChange() | |||||
| { | |||||
| for (int i = windows.size(); --i >= 0;) | |||||
| windows.getUnchecked(i)->sendLookAndFeelChange(); | |||||
| } | |||||
| @@ -114,6 +114,8 @@ public: | |||||
| void avoidSuperimposedWindows (MainWindow*); | void avoidSuperimposedWindows (MainWindow*); | ||||
| void sendLookAndFeelChange(); | |||||
| OwnedArray<MainWindow> windows; | OwnedArray<MainWindow> windows; | ||||
| private: | private: | ||||
| @@ -74,7 +74,7 @@ namespace ProjectSettingsTreeClasses | |||||
| String getRenamingName() const { return getDisplayName(); } | String getRenamingName() const { return getDisplayName(); } | ||||
| String getDisplayName() const { return config->getName(); } | String getDisplayName() const { return config->getName(); } | ||||
| void setName (const String&) {} | void setName (const String&) {} | ||||
| Icon getIcon() const { return Icon (getIcons().config, Colours::darkgreen); } | |||||
| Icon getIcon() const { return Icon (getIcons().config, getContrastingColour (Colours::green, 0.5f)); } | |||||
| void showDocument() { showSettingsPage (new SettingsComp (config, exporterName)); } | void showDocument() { showSettingsPage (new SettingsComp (config, exporterName)); } | ||||
| void itemOpennessChanged (bool) {} | void itemOpennessChanged (bool) {} | ||||
| @@ -175,7 +175,7 @@ namespace ProjectSettingsTreeClasses | |||||
| String getDisplayName() const { return exporter->getName(); } | String getDisplayName() const { return exporter->getName(); } | ||||
| void setName (const String&) {} | void setName (const String&) {} | ||||
| bool isMissing() { return false; } | bool isMissing() { return false; } | ||||
| Icon getIcon() const { return Icon (getIcons().exporter, Colours::darkgrey); } | |||||
| Icon getIcon() const { return Icon (getIcons().exporter, getContrastingColour (0.5f)); } | |||||
| void showDocument() { showSettingsPage (new SettingsComp (exporter)); } | void showDocument() { showSettingsPage (new SettingsComp (exporter)); } | ||||
| void deleteItem() | void deleteItem() | ||||
| @@ -297,7 +297,7 @@ namespace ProjectSettingsTreeClasses | |||||
| String getDisplayName() const { return "Modules"; } | String getDisplayName() const { return "Modules"; } | ||||
| void setName (const String&) {} | void setName (const String&) {} | ||||
| bool isMissing() { return false; } | bool isMissing() { return false; } | ||||
| Icon getIcon() const { return Icon (getIcons().graph, Colours::darkred); } | |||||
| Icon getIcon() const { return Icon (getIcons().graph, getContrastingColour (Colours::red, 0.5f)); } | |||||
| void showDocument() { showSettingsPage (new SettingsComp (project)); } | void showDocument() { showSettingsPage (new SettingsComp (project)); } | ||||
| private: | private: | ||||
| @@ -349,7 +349,7 @@ namespace ProjectSettingsTreeClasses | |||||
| String getDisplayName() const { return project.getTitle(); } | String getDisplayName() const { return project.getTitle(); } | ||||
| void setName (const String&) {} | void setName (const String&) {} | ||||
| bool isMissing() { return false; } | bool isMissing() { return false; } | ||||
| Icon getIcon() const { return project.getMainGroup().getIcon(); } | |||||
| Icon getIcon() const { return project.getMainGroup().getIcon().withContrastingColourTo (getBackgroundColour()); } | |||||
| void showDocument() { showSettingsPage (new SettingsComp (project)); } | void showDocument() { showSettingsPage (new SettingsComp (project)); } | ||||
| bool canBeSelected() const { return true; } | bool canBeSelected() const { return true; } | ||||
| bool mightContainSubItems() { return project.getNumExporters() > 0; } | bool mightContainSubItems() { return project.getNumExporters() > 0; } | ||||
| @@ -1,155 +0,0 @@ | |||||
| /* | |||||
| ============================================================================== | |||||
| 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_GroupInformationComponent.h" | |||||
| //============================================================================== | |||||
| GroupInformationComponent::GroupInformationComponent (const Project::Item& item_) | |||||
| : item (item_) | |||||
| { | |||||
| list.setModel (this); | |||||
| addAndMakeVisible (&list); | |||||
| list.updateContent(); | |||||
| list.setRowHeight (20); | |||||
| item.state.addListener (this); | |||||
| } | |||||
| GroupInformationComponent::~GroupInformationComponent() | |||||
| { | |||||
| item.state.removeListener (this); | |||||
| } | |||||
| void GroupInformationComponent::resized() | |||||
| { | |||||
| list.setSize (getWidth(), getHeight()); | |||||
| } | |||||
| int GroupInformationComponent::getNumRows() | |||||
| { | |||||
| return item.getNumChildren(); | |||||
| } | |||||
| void GroupInformationComponent::paintListBoxItem (int rowNumber, Graphics& g, int width, int height, bool rowIsSelected) | |||||
| { | |||||
| } | |||||
| //============================================================================== | |||||
| void GroupInformationComponent::valueTreePropertyChanged (ValueTree& treeWhosePropertyHasChanged, const Identifier& property) | |||||
| { | |||||
| list.updateContent(); | |||||
| } | |||||
| void GroupInformationComponent::valueTreeChildAdded (ValueTree&, ValueTree&) | |||||
| { | |||||
| list.updateContent(); | |||||
| } | |||||
| void GroupInformationComponent::valueTreeChildRemoved (ValueTree&, ValueTree&) | |||||
| { | |||||
| list.updateContent(); | |||||
| } | |||||
| void GroupInformationComponent::valueTreeChildOrderChanged (ValueTree&) | |||||
| { | |||||
| list.updateContent(); | |||||
| } | |||||
| void GroupInformationComponent::valueTreeParentChanged (ValueTree&) | |||||
| { | |||||
| list.updateContent(); | |||||
| } | |||||
| //============================================================================== | |||||
| class FileOptionComponent : public Component | |||||
| { | |||||
| public: | |||||
| FileOptionComponent (const Project::Item& item_) | |||||
| : item (item_), | |||||
| compileButton ("Compile"), | |||||
| resourceButton ("Add to Binary Resources") | |||||
| { | |||||
| if (item.isFile()) | |||||
| { | |||||
| addAndMakeVisible (&compileButton); | |||||
| compileButton.getToggleStateValue().referTo (item.getShouldCompileValue()); | |||||
| addAndMakeVisible (&resourceButton); | |||||
| resourceButton.getToggleStateValue().referTo (item.getShouldAddToResourceValue()); | |||||
| } | |||||
| } | |||||
| void paint (Graphics& g) | |||||
| { | |||||
| int x = getHeight() + 6; | |||||
| item.getIcon().draw (g, Rectangle<float> (2.0f, 2.0f, x - 4.0f, getHeight() - 4.0f)); | |||||
| g.setColour (Colours::black); | |||||
| g.setFont (getHeight() * 0.6f); | |||||
| const int x2 = compileButton.isVisible() ? compileButton.getX() - 4 | |||||
| : getWidth() - 4; | |||||
| g.drawText (item.getName(), x, 0, x2 - x, getHeight(), Justification::centredLeft, true); | |||||
| g.setColour (Colours::lightgrey); | |||||
| g.fillRect (0, getHeight() - 1, getWidth(), 1); | |||||
| } | |||||
| void resized() | |||||
| { | |||||
| int w = 180; | |||||
| resourceButton.setBounds (getWidth() - w, 1, w, getHeight() - 2); | |||||
| w = 100; | |||||
| compileButton.setBounds (resourceButton.getX() - w, 1, w, getHeight() - 2); | |||||
| } | |||||
| Project::Item item; | |||||
| private: | |||||
| ToggleButton compileButton, resourceButton; | |||||
| }; | |||||
| Component* GroupInformationComponent::refreshComponentForRow (int rowNumber, bool isRowSelected, Component* existingComponentToUpdate) | |||||
| { | |||||
| if (rowNumber < getNumRows()) | |||||
| { | |||||
| Project::Item child (item.getChild (rowNumber)); | |||||
| if (existingComponentToUpdate == nullptr | |||||
| || dynamic_cast <FileOptionComponent*> (existingComponentToUpdate)->item != child) | |||||
| { | |||||
| delete existingComponentToUpdate; | |||||
| existingComponentToUpdate = new FileOptionComponent (child); | |||||
| } | |||||
| } | |||||
| else | |||||
| { | |||||
| deleteAndZero (existingComponentToUpdate); | |||||
| } | |||||
| return existingComponentToUpdate; | |||||
| } | |||||
| @@ -37,27 +37,127 @@ class GroupInformationComponent : public Component, | |||||
| { | { | ||||
| public: | public: | ||||
| //============================================================================== | //============================================================================== | ||||
| GroupInformationComponent (const Project::Item& item_); | |||||
| ~GroupInformationComponent(); | |||||
| GroupInformationComponent (const Project::Item& item_) | |||||
| : item (item_) | |||||
| { | |||||
| list.setModel (this); | |||||
| list.setColour (ListBox::backgroundColourId, Colours::transparentBlack); | |||||
| addAndMakeVisible (&list); | |||||
| list.updateContent(); | |||||
| list.setRowHeight (20); | |||||
| item.state.addListener (this); | |||||
| lookAndFeelChanged(); | |||||
| } | |||||
| ~GroupInformationComponent() | |||||
| { | |||||
| item.state.removeListener (this); | |||||
| } | |||||
| //============================================================================== | //============================================================================== | ||||
| void resized(); | |||||
| int getNumRows(); | |||||
| void paintListBoxItem (int rowNumber, Graphics& g, int width, int height, bool rowIsSelected); | |||||
| Component* refreshComponentForRow (int rowNumber, bool isRowSelected, Component* existingComponentToUpdate); | |||||
| void paint (Graphics& g) | |||||
| { | |||||
| g.fillAll (findColour (projectPanelBackgroundColourId)); | |||||
| } | |||||
| void resized() | |||||
| { | |||||
| list.setBounds (getLocalBounds().reduced (4, 2)); | |||||
| } | |||||
| int getNumRows() | |||||
| { | |||||
| return item.getNumChildren(); | |||||
| } | |||||
| void paintListBoxItem (int rowNumber, Graphics& g, int width, int height, bool rowIsSelected) | |||||
| { | |||||
| g.setColour (Colours::white.withAlpha (0.4f)); | |||||
| g.fillRect (0, 0, width, height - 1); | |||||
| } | |||||
| Component* refreshComponentForRow (int rowNumber, bool isRowSelected, Component* existingComponentToUpdate) | |||||
| { | |||||
| if (rowNumber < getNumRows()) | |||||
| { | |||||
| Project::Item child (item.getChild (rowNumber)); | |||||
| if (existingComponentToUpdate == nullptr | |||||
| || dynamic_cast <FileOptionComponent*> (existingComponentToUpdate)->item != child) | |||||
| { | |||||
| delete existingComponentToUpdate; | |||||
| existingComponentToUpdate = new FileOptionComponent (child); | |||||
| } | |||||
| } | |||||
| else | |||||
| { | |||||
| deleteAndZero (existingComponentToUpdate); | |||||
| } | |||||
| return existingComponentToUpdate; | |||||
| } | |||||
| //============================================================================== | //============================================================================== | ||||
| void valueTreePropertyChanged (ValueTree& treeWhosePropertyHasChanged, const Identifier& property); | |||||
| void valueTreeChildAdded (ValueTree& parentTree, ValueTree& childWhichHasBeenAdded); | |||||
| void valueTreeChildRemoved (ValueTree& parentTree, ValueTree& childWhichHasBeenRemoved); | |||||
| void valueTreeChildOrderChanged (ValueTree& parentTree); | |||||
| void valueTreeParentChanged (ValueTree& treeWhoseParentHasChanged); | |||||
| void valueTreePropertyChanged (ValueTree&, const Identifier&) { list.updateContent(); } | |||||
| void valueTreeChildAdded (ValueTree&, ValueTree&) { list.updateContent(); } | |||||
| void valueTreeChildRemoved (ValueTree&, ValueTree&) { list.updateContent(); } | |||||
| void valueTreeChildOrderChanged (ValueTree&) { list.updateContent(); } | |||||
| void valueTreeParentChanged (ValueTree&) { list.updateContent(); } | |||||
| private: | private: | ||||
| Project::Item item; | Project::Item item; | ||||
| ListBox list; | ListBox list; | ||||
| //============================================================================== | |||||
| class FileOptionComponent : public Component | |||||
| { | |||||
| public: | |||||
| FileOptionComponent (const Project::Item& item_) | |||||
| : item (item_), | |||||
| compileButton ("Compile"), | |||||
| resourceButton ("Add to Binary Resources") | |||||
| { | |||||
| if (item.isFile()) | |||||
| { | |||||
| addAndMakeVisible (&compileButton); | |||||
| compileButton.getToggleStateValue().referTo (item.getShouldCompileValue()); | |||||
| addAndMakeVisible (&resourceButton); | |||||
| resourceButton.getToggleStateValue().referTo (item.getShouldAddToResourceValue()); | |||||
| } | |||||
| } | |||||
| void paint (Graphics& g) | |||||
| { | |||||
| int x = getHeight() + 6; | |||||
| item.getIcon().withContrastingColourTo (Colours::grey) | |||||
| .draw (g, Rectangle<float> (2.0f, 2.0f, x - 4.0f, getHeight() - 4.0f)); | |||||
| g.setColour (Colours::black); | |||||
| g.setFont (getHeight() * 0.6f); | |||||
| const int x2 = compileButton.isVisible() ? compileButton.getX() - 4 | |||||
| : getWidth() - 4; | |||||
| g.drawText (item.getName(), x, 0, x2 - x, getHeight(), Justification::centredLeft, true); | |||||
| } | |||||
| void resized() | |||||
| { | |||||
| int w = 180; | |||||
| resourceButton.setBounds (getWidth() - w, 1, w, getHeight() - 2); | |||||
| w = 100; | |||||
| compileButton.setBounds (resourceButton.getX() - w, 1, w, getHeight() - 2); | |||||
| } | |||||
| Project::Item item; | |||||
| private: | |||||
| ToggleButton compileButton, resourceButton; | |||||
| }; | |||||
| JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (GroupInformationComponent); | JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (GroupInformationComponent); | ||||
| }; | }; | ||||
| @@ -96,10 +96,16 @@ ProjectContentComponent::ProjectContentComponent() | |||||
| treeSizeConstrainer.setMinimumWidth (100); | treeSizeConstrainer.setMinimumWidth (100); | ||||
| treeSizeConstrainer.setMaximumWidth (500); | treeSizeConstrainer.setMaximumWidth (500); | ||||
| treeViewTabs.setOutline (0); | |||||
| JucerApplication::getApp().openDocumentManager.addListener (this); | |||||
| } | } | ||||
| ProjectContentComponent::~ProjectContentComponent() | ProjectContentComponent::~ProjectContentComponent() | ||||
| { | { | ||||
| JucerApplication::getApp().openDocumentManager.removeListener (this); | |||||
| setProject (nullptr); | setProject (nullptr); | ||||
| contentView = nullptr; | contentView = nullptr; | ||||
| removeChildComponent (&bubbleMessage); | removeChildComponent (&bubbleMessage); | ||||
| @@ -108,7 +114,7 @@ ProjectContentComponent::~ProjectContentComponent() | |||||
| void ProjectContentComponent::paint (Graphics& g) | void ProjectContentComponent::paint (Graphics& g) | ||||
| { | { | ||||
| g.fillAll (Colour::greyLevel (0.8f)); | |||||
| g.fillAll (findColour (mainBackgroundColourId)); | |||||
| } | } | ||||
| void ProjectContentComponent::resized() | void ProjectContentComponent::resized() | ||||
| @@ -124,6 +130,16 @@ void ProjectContentComponent::resized() | |||||
| contentView->setBounds (r); | contentView->setBounds (r); | ||||
| } | } | ||||
| void ProjectContentComponent::lookAndFeelChanged() | |||||
| { | |||||
| const Colour tabColour (findColour (projectPanelBackgroundColourId)); | |||||
| for (int i = treeViewTabs.getNumTabs(); --i >= 0;) | |||||
| treeViewTabs.setTabBackgroundColour (i, tabColour); | |||||
| repaint(); | |||||
| } | |||||
| void ProjectContentComponent::childBoundsChanged (Component* child) | void ProjectContentComponent::childBoundsChanged (Component* child) | ||||
| { | { | ||||
| if (child == &treeViewTabs) | if (child == &treeViewTabs) | ||||
| @@ -191,8 +207,10 @@ void ProjectContentComponent::setProject (Project* newProject) | |||||
| void ProjectContentComponent::createProjectTabs() | void ProjectContentComponent::createProjectTabs() | ||||
| { | { | ||||
| jassert (project != nullptr); | jassert (project != nullptr); | ||||
| treeViewTabs.addTab ("Files", Colour::greyLevel (0.93f), new FileTreeTab (*project), true); | |||||
| treeViewTabs.addTab ("Config", Colour::greyLevel (0.93f), new ConfigTreeTab (*project), true); | |||||
| const Colour tabColour (findColour (projectPanelBackgroundColourId)); | |||||
| treeViewTabs.addTab ("Files", tabColour, new FileTreeTab (*project), true); | |||||
| treeViewTabs.addTab ("Config", tabColour, new ConfigTreeTab (*project), true); | |||||
| } | } | ||||
| TreeView* ProjectContentComponent::getFilesTreeView() const | TreeView* ProjectContentComponent::getFilesTreeView() const | ||||
| @@ -243,6 +261,11 @@ void ProjectContentComponent::reloadLastOpenDocuments() | |||||
| } | } | ||||
| } | } | ||||
| void ProjectContentComponent::documentAboutToClose (OpenDocumentManager::Document* document) | |||||
| { | |||||
| hideDocument (document); | |||||
| } | |||||
| void ProjectContentComponent::changeListenerCallback (ChangeBroadcaster*) | void ProjectContentComponent::changeListenerCallback (ChangeBroadcaster*) | ||||
| { | { | ||||
| updateMissingFileStatuses(); | updateMissingFileStatuses(); | ||||
| @@ -35,7 +35,8 @@ class ProjectTreeViewBase; | |||||
| */ | */ | ||||
| class ProjectContentComponent : public Component, | class ProjectContentComponent : public Component, | ||||
| public ApplicationCommandTarget, | public ApplicationCommandTarget, | ||||
| private ChangeListener | |||||
| private ChangeListener, | |||||
| private OpenDocumentManager::DocumentCloseListener | |||||
| { | { | ||||
| public: | public: | ||||
| //============================================================================== | //============================================================================== | ||||
| @@ -78,6 +79,7 @@ public: | |||||
| void paint (Graphics& g); | void paint (Graphics& g); | ||||
| void resized(); | void resized(); | ||||
| void childBoundsChanged (Component* child); | void childBoundsChanged (Component* child); | ||||
| void lookAndFeelChanged(); | |||||
| protected: | protected: | ||||
| Project* project; | Project* project; | ||||
| @@ -91,6 +93,7 @@ protected: | |||||
| ComponentBoundsConstrainer treeSizeConstrainer; | ComponentBoundsConstrainer treeSizeConstrainer; | ||||
| BubbleMessageComponent bubbleMessage; | BubbleMessageComponent bubbleMessage; | ||||
| void documentAboutToClose (OpenDocumentManager::Document*); | |||||
| void changeListenerCallback (ChangeBroadcaster*); | void changeListenerCallback (ChangeBroadcaster*); | ||||
| void updateMainWindowTitle(); | void updateMainWindowTitle(); | ||||
| bool reinvokeCommandAfterClosingPropertyEditors (const InvocationInfo&); | bool reinvokeCommandAfterClosingPropertyEditors (const InvocationInfo&); | ||||
| @@ -101,7 +101,8 @@ protected: | |||||
| //============================================================================== | //============================================================================== | ||||
| void treeChildrenChanged (const ValueTree& parentTree); | void treeChildrenChanged (const ValueTree& parentTree); | ||||
| virtual ProjectTreeViewBase* createSubItem (const Project::Item& node) = 0; | virtual ProjectTreeViewBase* createSubItem (const Project::Item& node) = 0; | ||||
| Icon getIcon() const { return item.getIcon(); } | |||||
| Icon getIcon() const { return item.getIcon().withContrastingColourTo (getBackgroundColour()); } | |||||
| //============================================================================== | //============================================================================== | ||||
| void triggerAsyncRename (const Project::Item& itemToRename); | void triggerAsyncRename (const Project::Item& itemToRename); | ||||
| @@ -49,7 +49,7 @@ Font JucerTreeViewBase::getFont() const | |||||
| void JucerTreeViewBase::paintItem (Graphics& g, int width, int height) | void JucerTreeViewBase::paintItem (Graphics& g, int width, int height) | ||||
| { | { | ||||
| if (isSelected()) | if (isSelected()) | ||||
| g.fillAll (Colour (0x401111ee)); | |||||
| g.fillAll (getOwnerView()->findColour (treeviewHighlightColourId)); | |||||
| } | } | ||||
| float JucerTreeViewBase::getIconSize() const | float JucerTreeViewBase::getIconSize() const | ||||
| @@ -66,14 +66,35 @@ void JucerTreeViewBase::paintOpenCloseButton (Graphics& g, int width, int height | |||||
| else | 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.setColour (getContrastingColour (0.3f)); | |||||
| g.fillPath (p); | g.fillPath (p); | ||||
| } | } | ||||
| Colour JucerTreeViewBase::getBackgroundColour() const | |||||
| { | |||||
| Colour background (getOwnerView()->findColour (projectPanelBackgroundColourId)); | |||||
| if (isSelected()) | |||||
| background = background.overlaidWith (getOwnerView()->findColour (treeviewHighlightColourId)); | |||||
| return background; | |||||
| } | |||||
| Colour JucerTreeViewBase::getContrastingColour (float contrast) const | |||||
| { | |||||
| return getBackgroundColour().contrasting (contrast); | |||||
| } | |||||
| Colour JucerTreeViewBase::getContrastingColour (const Colour& target, float minContrast) const | |||||
| { | |||||
| return getBackgroundColour().contrasting (target, minContrast); | |||||
| } | |||||
| void JucerTreeViewBase::paintContent (Graphics& g, const Rectangle<int>& area) | void JucerTreeViewBase::paintContent (Graphics& g, const Rectangle<int>& area) | ||||
| { | { | ||||
| g.setFont (getFont()); | g.setFont (getFont()); | ||||
| g.setColour (isMissing() ? Colours::red : Colours::black); | |||||
| g.setColour (isMissing() ? getContrastingColour (Colours::red, 0.8f) | |||||
| : getContrastingColour (0.8f)); | |||||
| g.drawFittedText (getDisplayName(), | g.drawFittedText (getDisplayName(), | ||||
| area.getX(), area.getY(), area.getWidth(), area.getHeight(), | area.getX(), area.getY(), area.getWidth(), area.getHeight(), | ||||
| @@ -93,6 +93,10 @@ protected: | |||||
| ProjectContentComponent* getProjectContentComponent() const; | ProjectContentComponent* getProjectContentComponent() const; | ||||
| virtual void addSubItems() {} | virtual void addSubItems() {} | ||||
| Colour getBackgroundColour() const; | |||||
| Colour getContrastingColour (float contrast) const; | |||||
| Colour getContrastingColour (const Colour& targetColour, float minContrast) const; | |||||
| private: | private: | ||||
| class ItemSelectionTimer; | class ItemSelectionTimer; | ||||
| friend class ItemSelectionTimer; | friend class ItemSelectionTimer; | ||||
| @@ -49,6 +49,15 @@ static AppearanceSettings getDefaultScheme() | |||||
| //============================================================================== | //============================================================================== | ||||
| StoredSettings::StoredSettings() | StoredSettings::StoredSettings() | ||||
| : appearance (getDefaultScheme()) | : appearance (getDefaultScheme()) | ||||
| { | |||||
| } | |||||
| StoredSettings::~StoredSettings() | |||||
| { | |||||
| flush(); | |||||
| } | |||||
| void StoredSettings::initialise() | |||||
| { | { | ||||
| reload(); | reload(); | ||||
| @@ -58,11 +67,6 @@ StoredSettings::StoredSettings() | |||||
| appearance.writeToFile (defaultSchemeFile); | appearance.writeToFile (defaultSchemeFile); | ||||
| } | } | ||||
| StoredSettings::~StoredSettings() | |||||
| { | |||||
| flush(); | |||||
| } | |||||
| PropertiesFile& StoredSettings::getProps() | PropertiesFile& StoredSettings::getProps() | ||||
| { | { | ||||
| jassert (props != nullptr); | jassert (props != nullptr); | ||||
| @@ -36,6 +36,8 @@ public: | |||||
| StoredSettings(); | StoredSettings(); | ||||
| ~StoredSettings(); | ~StoredSettings(); | ||||
| void initialise(); | |||||
| PropertiesFile& getProps(); | PropertiesFile& getProps(); | ||||
| void flush(); | void flush(); | ||||
| void reload(); | void reload(); | ||||