diff --git a/extras/Introjucer/Builds/Linux/Makefile b/extras/Introjucer/Builds/Linux/Makefile
index 89a3e15296..011b332f2d 100644
--- a/extras/Introjucer/Builds/Linux/Makefile
+++ b/extras/Introjucer/Builds/Linux/Makefile
@@ -63,6 +63,7 @@ OBJECTS := \
$(OBJDIR)/jucer_ResourceFile_6af120d3.o \
$(OBJDIR)/jucer_CodeHelpers_c317179c.o \
$(OBJDIR)/jucer_FileHelpers_f98ed0ad.o \
+ $(OBJDIR)/jucer_Icons_9db2f51e.o \
$(OBJDIR)/jucer_JucerTreeViewBase_d043309d.o \
$(OBJDIR)/jucer_MiscUtilities_25b68c82.o \
$(OBJDIR)/jucer_StoredSettings_26078d2c.o \
@@ -191,6 +192,11 @@ $(OBJDIR)/jucer_FileHelpers_f98ed0ad.o: ../../Source/Utility/jucer_FileHelpers.c
@echo "Compiling jucer_FileHelpers.cpp"
@$(CXX) $(CXXFLAGS) -o "$@" -c "$<"
+$(OBJDIR)/jucer_Icons_9db2f51e.o: ../../Source/Utility/jucer_Icons.cpp
+ -@mkdir -p $(OBJDIR)
+ @echo "Compiling jucer_Icons.cpp"
+ @$(CXX) $(CXXFLAGS) -o "$@" -c "$<"
+
$(OBJDIR)/jucer_JucerTreeViewBase_d043309d.o: ../../Source/Utility/jucer_JucerTreeViewBase.cpp
-@mkdir -p $(OBJDIR)
@echo "Compiling jucer_JucerTreeViewBase.cpp"
diff --git a/extras/Introjucer/Builds/MacOSX/The Introjucer.xcodeproj/project.pbxproj b/extras/Introjucer/Builds/MacOSX/The Introjucer.xcodeproj/project.pbxproj
index b7792bd872..b73e9d3a5e 100644
--- a/extras/Introjucer/Builds/MacOSX/The Introjucer.xcodeproj/project.pbxproj
+++ b/extras/Introjucer/Builds/MacOSX/The Introjucer.xcodeproj/project.pbxproj
@@ -32,6 +32,7 @@
110221CD5578153B528AD2BE = { isa = PBXBuildFile; fileRef = D10D51A0A2D63F38B4D86A60; };
CD4F7B119CE718BCE78D61F4 = { isa = PBXBuildFile; fileRef = 9B9CAD20E1243B4351B4C8D8; };
78CB463DD98A55313A543859 = { isa = PBXBuildFile; fileRef = 1729AEDC34001C31B8CC357C; };
+ 1499DF2E85B05AC1BF423773 = { isa = PBXBuildFile; fileRef = CF21D9DB3AEC0A4DCAB36A99; };
123810DAF8AF758928916ECE = { isa = PBXBuildFile; fileRef = 47DD50A5A9091F9900E0EAD9; };
C9F11BA62D6D092A300363F7 = { isa = PBXBuildFile; fileRef = 0F249640243FBD5717F6ADD9; };
F6635694A01FFBF5EF0968DB = { isa = PBXBuildFile; fileRef = 631983AA62673015F8D7453B; };
@@ -268,6 +269,7 @@
50DBEAC56E34B9909BA9C7AD = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_BigInteger.h"; path = "../../../../modules/juce_core/maths/juce_BigInteger.h"; sourceTree = "SOURCE_ROOT"; };
50EF77E1AB95027E82157377 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GlyphArrangement.cpp"; path = "../../../../modules/juce_graphics/fonts/juce_GlyphArrangement.cpp"; sourceTree = "SOURCE_ROOT"; };
514848DA3E69A69AB0099570 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Threads.cpp"; path = "../../../../modules/juce_core/native/juce_win32_Threads.cpp"; sourceTree = "SOURCE_ROOT"; };
+ 515FF6E74826E3E3F7273621 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_Icons.h"; path = "../../Source/Utility/jucer_Icons.h"; sourceTree = "SOURCE_ROOT"; };
51A0763AC785F93591517559 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DrawableText.cpp"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawableText.cpp"; sourceTree = "SOURCE_ROOT"; };
51C6A6EB22F80FFF0A2800B3 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CharPointer_UTF16.h"; path = "../../../../modules/juce_core/text/juce_CharPointer_UTF16.h"; sourceTree = "SOURCE_ROOT"; };
51D0841BECA0E4405EDEC794 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_BubbleMessageComponent.cpp"; path = "../../../../modules/juce_gui_extra/misc/juce_BubbleMessageComponent.cpp"; sourceTree = "SOURCE_ROOT"; };
@@ -601,6 +603,7 @@
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"; };
C8A229ACD244F402C57286CD = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_ProjectExport_MSVC.h"; path = "../../Source/Project Saving/jucer_ProjectExport_MSVC.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"; };
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"; };
C9DCA94BF8A4C583E5392755 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MultiTimer.cpp"; path = "../../../../modules/juce_events/timers/juce_MultiTimer.cpp"; sourceTree = "SOURCE_ROOT"; };
@@ -609,7 +612,6 @@
CB48495010366C2E371BEFDB = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_SystemStats.cpp"; path = "../../../../modules/juce_core/system/juce_SystemStats.cpp"; sourceTree = "SOURCE_ROOT"; };
CBE0B96838EE76C9CB8E1230 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ColourGradient.cpp"; path = "../../../../modules/juce_graphics/colour/juce_ColourGradient.cpp"; sourceTree = "SOURCE_ROOT"; };
CC3F5263B16932FF4E74B9D8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CodeEditorComponent.h"; path = "../../../../modules/juce_gui_extra/code_editor/juce_CodeEditorComponent.h"; sourceTree = "SOURCE_ROOT"; };
- CC63B9EC2E95FD4AF7608D8E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CharacterFunctions.h"; path = "../../../../modules/juce_core/text/juce_CharacterFunctions.h"; sourceTree = "SOURCE_ROOT"; };
CD140A1C0161176682F6CA29 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ResizableWindow.cpp"; path = "../../../../modules/juce_gui_basics/windows/juce_ResizableWindow.cpp"; sourceTree = "SOURCE_ROOT"; };
CD3216F23C7B273B010A8D12 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CustomTypeface.h"; path = "../../../../modules/juce_graphics/fonts/juce_CustomTypeface.h"; sourceTree = "SOURCE_ROOT"; };
CD8F40A9EF6ECAD083543974 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_WildcardFileFilter.h"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_WildcardFileFilter.h"; sourceTree = "SOURCE_ROOT"; };
@@ -618,6 +620,7 @@
CDF8F65F9079B2C14A740F0F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ImageButton.h"; path = "../../../../modules/juce_gui_basics/buttons/juce_ImageButton.h"; sourceTree = "SOURCE_ROOT"; };
CE1DFE4E3908943656E180AD = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_UnitTest.cpp"; path = "../../../../modules/juce_core/unit_tests/juce_UnitTest.cpp"; sourceTree = "SOURCE_ROOT"; };
CF0615A1AF1A514A60322B50 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MouseCursor.h"; path = "../../../../modules/juce_gui_basics/mouse/juce_MouseCursor.h"; sourceTree = "SOURCE_ROOT"; };
+ CF21D9DB3AEC0A4DCAB36A99 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_Icons.cpp"; path = "../../Source/Utility/jucer_Icons.cpp"; sourceTree = "SOURCE_ROOT"; };
CF6C8BD0DA3D8CD4E99EBADA = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = WebKit.framework; path = System/Library/Frameworks/WebKit.framework; sourceTree = SDKROOT; };
CF8011B3C67B609032974DA5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "jucer_NewCppFileTemplate.cpp"; path = "../../Source/BinaryData/jucer_NewCppFileTemplate.cpp"; sourceTree = "SOURCE_ROOT"; };
D00F311BFC3C2625C457CB9B = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Carbon.framework; path = System/Library/Frameworks/Carbon.framework; sourceTree = SDKROOT; };
@@ -629,42 +632,42 @@
D2F1CF252F7EC62B35A21CB6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DropShadowEffect.cpp"; path = "../../../../modules/juce_graphics/effects/juce_DropShadowEffect.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"; };
- D4E56676E2EF83404EDCBA8C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_TextEditor.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_TextEditor.cpp"; sourceTree = "SOURCE_ROOT"; };
D4F2D42C58F4D86E00E76F31 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ApplicationCommandID.h"; path = "../../../../modules/juce_gui_basics/commands/juce_ApplicationCommandID.h"; sourceTree = "SOURCE_ROOT"; };
- D503780AB98993E8F0BA1311 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ImageComponent.cpp"; path = "../../../../modules/juce_gui_basics/widgets/juce_ImageComponent.cpp"; sourceTree = "SOURCE_ROOT"; };
- D5057D7B18ABD5E810A6F830 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_DirectWriteTypeface.cpp"; path = "../../../../modules/juce_graphics/native/juce_win32_DirectWriteTypeface.cpp"; sourceTree = "SOURCE_ROOT"; };
D526C38D581425949BA0E4AC = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "jucer_FilePreviewComponent.h"; path = "../../Source/Application/jucer_FilePreviewComponent.h"; sourceTree = "SOURCE_ROOT"; };
D53B54D1786A1FFC024BF064 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_cryptography.mm"; path = "../../../../modules/juce_cryptography/juce_cryptography.mm"; sourceTree = "SOURCE_ROOT"; };
D5A6D00DEFDC650AF432A698 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Initialisation.h"; path = "../../../../modules/juce_gui_basics/application/juce_Initialisation.h"; sourceTree = "SOURCE_ROOT"; };
- D678882D133090214AF681BC = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ThreadLocalValue.h"; path = "../../../../modules/juce_core/threads/juce_ThreadLocalValue.h"; sourceTree = "SOURCE_ROOT"; };
- D6C91E2BF537F75A80F5C1DB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ListBox.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_ListBox.h"; sourceTree = "SOURCE_ROOT"; };
+ D75EAC16FAECCC51E3669193 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ApplicationCommandInfo.h"; path = "../../../../modules/juce_gui_basics/commands/juce_ApplicationCommandInfo.h"; sourceTree = "SOURCE_ROOT"; };
D780ED33573AED5AD383A036 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CaretComponent.h"; path = "../../../../modules/juce_gui_basics/keyboard/juce_CaretComponent.h"; sourceTree = "SOURCE_ROOT"; };
D782DA091AD3ECE158FC6A5F = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ButtonPropertyComponent.h"; path = "../../../../modules/juce_gui_basics/properties/juce_ButtonPropertyComponent.h"; sourceTree = "SOURCE_ROOT"; };
- D7A7F1AA9F313B0CCAAA73A0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MathsFunctions.h"; path = "../../../../modules/juce_core/maths/juce_MathsFunctions.h"; sourceTree = "SOURCE_ROOT"; };
- 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"; };
+ D9E59DE07A815AB303A297D9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_data_structures.mm"; path = "../../../../modules/juce_data_structures/juce_data_structures.mm"; 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"; };
+ DE5F3C9EF6BFFDE73AF9E7FC = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DirectoryContentsDisplayComponent.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_DirectoryContentsDisplayComponent.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"; };
E5D6C36496F5BC84D7213BE8 = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = System/Library/Frameworks/QuartzCore.framework; sourceTree = SDKROOT; };
E96597BBC6A98255B51B94DC = { isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = IOKit.framework; path = System/Library/Frameworks/IOKit.framework; sourceTree = SDKROOT; };
25F52316D256B4534BED16D1 = { isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Introjucer.app; sourceTree = "BUILT_PRODUCTS_DIR"; };
- C90C66C5727759D5CBD5FB07 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AbstractFifo.cpp"; path = "../../../../modules/juce_core/containers/juce_AbstractFifo.cpp"; sourceTree = "SOURCE_ROOT"; };
+ CC63B9EC2E95FD4AF7608D8E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CharacterFunctions.h"; path = "../../../../modules/juce_core/text/juce_CharacterFunctions.h"; sourceTree = "SOURCE_ROOT"; };
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"; };
+ 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"; };
+ D678882D133090214AF681BC = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ThreadLocalValue.h"; path = "../../../../modules/juce_core/threads/juce_ThreadLocalValue.h"; sourceTree = "SOURCE_ROOT"; };
+ D6C91E2BF537F75A80F5C1DB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ListBox.h"; path = "../../../../modules/juce_gui_basics/widgets/juce_ListBox.h"; sourceTree = "SOURCE_ROOT"; };
+ D7A7F1AA9F313B0CCAAA73A0 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MathsFunctions.h"; path = "../../../../modules/juce_core/maths/juce_MathsFunctions.h"; sourceTree = "SOURCE_ROOT"; };
D800DE818BEDBF4579D15B1D = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_mac_AppleRemote.mm"; path = "../../../../modules/juce_gui_extra/native/juce_mac_AppleRemote.mm"; sourceTree = "SOURCE_ROOT"; };
D926E13AB5AD647A7A00F486 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_Network.cpp"; path = "../../../../modules/juce_core/native/juce_linux_Network.cpp"; sourceTree = "SOURCE_ROOT"; };
D9342535EA61901A1AD816C6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_linux_WebBrowserComponent.cpp"; path = "../../../../modules/juce_gui_extra/native/juce_linux_WebBrowserComponent.cpp"; sourceTree = "SOURCE_ROOT"; };
D95D7B49EC6C6BDCB5A1B988 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_ios_MessageManager.mm"; path = "../../../../modules/juce_events/native/juce_ios_MessageManager.mm"; sourceTree = "SOURCE_ROOT"; };
- D9E59DE07A815AB303A297D9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = "juce_data_structures.mm"; path = "../../../../modules/juce_data_structures/juce_data_structures.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"; };
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"; };
- 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"; };
+ DC5E7FF30B01118F6DAEC38F = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Time.cpp"; path = "../../../../modules/juce_core/time/juce_Time.cpp"; sourceTree = "SOURCE_ROOT"; };
DD00494140C86144306A9356 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Array.h"; path = "../../../../modules/juce_core/containers/juce_Array.h"; sourceTree = "SOURCE_ROOT"; };
- DD2494D5F1C081898D616AF5 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_KeyListener.cpp"; path = "../../../../modules/juce_gui_basics/keyboard/juce_KeyListener.cpp"; sourceTree = "SOURCE_ROOT"; };
DD985A60FB76E976AF91852D = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_SHA256.h"; path = "../../../../modules/juce_cryptography/hashing/juce_SHA256.h"; sourceTree = "SOURCE_ROOT"; };
DE40B42B57F29C650CB7F2AD = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RecentlyOpenedFilesList.h"; path = "../../../../modules/juce_gui_extra/misc/juce_RecentlyOpenedFilesList.h"; sourceTree = "SOURCE_ROOT"; };
- DE5F3C9EF6BFFDE73AF9E7FC = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DirectoryContentsDisplayComponent.cpp"; path = "../../../../modules/juce_gui_basics/filebrowser/juce_DirectoryContentsDisplayComponent.cpp"; sourceTree = "SOURCE_ROOT"; };
DE8DF5D263F40F65581CFDE4 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ChildProcess.cpp"; path = "../../../../modules/juce_core/threads/juce_ChildProcess.cpp"; sourceTree = "SOURCE_ROOT"; };
DEF579B1433EB8DEE7AB50F8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Drawable.cpp"; path = "../../../../modules/juce_gui_basics/drawables/juce_Drawable.cpp"; sourceTree = "SOURCE_ROOT"; };
- DF7BB5B6B394EDEEF5F5B4B8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_CallbackMessage.h"; path = "../../../../modules/juce_events/messages/juce_CallbackMessage.h"; sourceTree = "SOURCE_ROOT"; };
DFC6364D81D9C60BD4CA9D12 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_RelativeTime.cpp"; path = "../../../../modules/juce_core/time/juce_RelativeTime.cpp"; sourceTree = "SOURCE_ROOT"; };
E07C56267CBB46FC44EF2026 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Image.cpp"; path = "../../../../modules/juce_graphics/images/juce_Image.cpp"; sourceTree = "SOURCE_ROOT"; };
E1C16C872E34BCB144B469F9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_EdgeTable.h"; path = "../../../../modules/juce_graphics/geometry/juce_EdgeTable.h"; sourceTree = "SOURCE_ROOT"; };
@@ -804,6 +807,8 @@
188D03A4247F4BC0539F5C49,
1729AEDC34001C31B8CC357C,
553725A0E3A391651ED1731E,
+ CF21D9DB3AEC0A4DCAB36A99,
+ 515FF6E74826E3E3F7273621,
47DD50A5A9091F9900E0EAD9,
820291543BF93243B718F0EE,
0F249640243FBD5717F6ADD9,
@@ -1699,6 +1704,7 @@
110221CD5578153B528AD2BE,
CD4F7B119CE718BCE78D61F4,
78CB463DD98A55313A543859,
+ 1499DF2E85B05AC1BF423773,
123810DAF8AF758928916ECE,
C9F11BA62D6D092A300363F7,
F6635694A01FFBF5EF0968DB,
diff --git a/extras/Introjucer/Builds/VisualStudio2005/The Introjucer.vcproj b/extras/Introjucer/Builds/VisualStudio2005/The Introjucer.vcproj
index 5205d0c4de..fe5a539e61 100644
--- a/extras/Introjucer/Builds/VisualStudio2005/The Introjucer.vcproj
+++ b/extras/Introjucer/Builds/VisualStudio2005/The Introjucer.vcproj
@@ -189,6 +189,8 @@
+
+
diff --git a/extras/Introjucer/Builds/VisualStudio2008/The Introjucer.vcproj b/extras/Introjucer/Builds/VisualStudio2008/The Introjucer.vcproj
index 9df7f30bc5..9e15f73d8d 100644
--- a/extras/Introjucer/Builds/VisualStudio2008/The Introjucer.vcproj
+++ b/extras/Introjucer/Builds/VisualStudio2008/The Introjucer.vcproj
@@ -189,6 +189,8 @@
+
+
diff --git a/extras/Introjucer/Builds/VisualStudio2010/The Introjucer.vcxproj b/extras/Introjucer/Builds/VisualStudio2010/The Introjucer.vcxproj
index 85f47f5c65..874b4833bb 100644
--- a/extras/Introjucer/Builds/VisualStudio2010/The Introjucer.vcxproj
+++ b/extras/Introjucer/Builds/VisualStudio2010/The Introjucer.vcxproj
@@ -146,6 +146,7 @@
+
@@ -997,6 +998,7 @@
+
diff --git a/extras/Introjucer/Builds/VisualStudio2010/The Introjucer.vcxproj.filters b/extras/Introjucer/Builds/VisualStudio2010/The Introjucer.vcxproj.filters
index c59aab341e..67973cf80a 100644
--- a/extras/Introjucer/Builds/VisualStudio2010/The Introjucer.vcxproj.filters
+++ b/extras/Introjucer/Builds/VisualStudio2010/The Introjucer.vcxproj.filters
@@ -289,6 +289,9 @@
The Introjucer\Utility
+
+ The Introjucer\Utility
+
The Introjucer\Utility
@@ -1290,6 +1293,9 @@
The Introjucer\Utility
+
+ The Introjucer\Utility
+
The Introjucer\Utility
diff --git a/extras/Introjucer/Introjucer.jucer b/extras/Introjucer/Introjucer.jucer
index cbeab22e58..4c48dc5a34 100644
--- a/extras/Introjucer/Introjucer.jucer
+++ b/extras/Introjucer/Introjucer.jucer
@@ -175,6 +175,8 @@
file="Source/Utility/jucer_FileHelpers.cpp"/>
+
+
0 && pos.getLineText().trim().isEmpty())
{
- String indent;
- CppUtils::getIndentForCurrentBlock (pos, indent);
-
const String previousLine (pos.movedByLines (-1).getLineText());
const String trimmedPreviousLine (previousLine.trim());
- const String leadingWhitespace (CppUtils::getLeadingWhitespace (previousLine));
-
- insertTextAtCaret (leadingWhitespace);
if (trimmedPreviousLine.endsWithChar ('{')
|| ((trimmedPreviousLine.startsWith ("if ")
|| trimmedPreviousLine.startsWith ("for ")
|| trimmedPreviousLine.startsWith ("while "))
&& trimmedPreviousLine.endsWithChar (')')))
+ {
+ const String leadingWhitespace (CppUtils::getLeadingWhitespace (previousLine));
+ insertTextAtCaret (leadingWhitespace);
insertTabAtCaret();
+ }
+ else
+ {
+ while (pos.getLineNumber() > 0)
+ {
+ pos = pos.movedByLines (-1);
+ const String leadingWhitespace (CppUtils::getLeadingWhitespace (pos.getLineText()));
+
+ if (leadingWhitespace.isNotEmpty())
+ {
+ insertTextAtCaret (leadingWhitespace);
+ break;
+ }
+ }
+ }
}
}
diff --git a/extras/Introjucer/Source/Project/jucer_ProjectContentComponent.cpp b/extras/Introjucer/Source/Project/jucer_ProjectContentComponent.cpp
index 15a2359931..795265dab0 100644
--- a/extras/Introjucer/Source/Project/jucer_ProjectContentComponent.cpp
+++ b/extras/Introjucer/Source/Project/jucer_ProjectContentComponent.cpp
@@ -87,6 +87,27 @@ public:
TextButton openProjectButton, saveAndOpenButton;
};
+//==============================================================================
+class LogoComponent : public Component
+{
+public:
+ LogoComponent()
+ {
+ Rectangle iconSize (getIcons().mainJuceLogo.getBounds());
+ setSize (400, (int) (400 * iconSize.getWidth() / iconSize.getHeight()));
+ }
+
+ void paint (Graphics& g)
+ {
+ g.setColour (findColour (mainBackgroundColourId).contrasting (0.3f));
+
+ g.fillPath (getIcons().mainJuceLogo,
+ RectanglePlacement (RectanglePlacement::centred)
+ .getTransformToFit (getIcons().mainJuceLogo.getBounds(),
+ getLocalBounds().toFloat()));
+ }
+};
+
//==============================================================================
ProjectContentComponent::ProjectContentComponent()
: project (nullptr),
@@ -96,6 +117,8 @@ ProjectContentComponent::ProjectContentComponent()
setOpaque (true);
setWantsKeyboardFocus (true);
+ addAndMakeVisible (logo = new LogoComponent());
+
treeSizeConstrainer.setMinimumWidth (200);
treeSizeConstrainer.setMaximumWidth (500);
@@ -109,6 +132,7 @@ ProjectContentComponent::~ProjectContentComponent()
{
JucerApplication::getApp().openDocumentManager.removeListener (this);
+ logo = nullptr;
setProject (nullptr);
contentView = nullptr;
removeChildComponent (&bubbleMessage);
@@ -141,13 +165,22 @@ void ProjectContentComponent::resized()
{
Rectangle r (getLocalBounds());
- treeViewTabs.setBounds (r.removeFromLeft (treeViewTabs.getWidth()));
+ if (treeViewTabs.isVisible())
+ treeViewTabs.setBounds (r.removeFromLeft (treeViewTabs.getWidth()));
if (resizerBar != nullptr)
resizerBar->setBounds (r.removeFromLeft (4));
if (contentView != nullptr)
+ {
contentView->setBounds (r);
+ logo->setVisible (false);
+ }
+ else
+ {
+ logo->setBounds (r.reduced (r.getWidth() / 4, r.getHeight() / 4));
+ logo->setVisible (true);
+ }
}
void ProjectContentComponent::lookAndFeelChanged()
@@ -215,12 +248,13 @@ void ProjectContentComponent::setProject (Project* newProject)
project->addChangeListener (this);
updateMissingFileStatuses();
- resized();
}
else
{
treeViewTabs.setVisible (false);
}
+
+ resized();
}
}
@@ -344,6 +378,7 @@ void ProjectContentComponent::hideEditor()
contentView = nullptr;
updateMainWindowTitle();
commandManager->commandStatusChanged();
+ resized();
}
void ProjectContentComponent::hideDocument (OpenDocumentManager::Document* doc)
diff --git a/extras/Introjucer/Source/Project/jucer_ProjectContentComponent.h b/extras/Introjucer/Source/Project/jucer_ProjectContentComponent.h
index 91c136f2e6..e5adea8978 100644
--- a/extras/Introjucer/Source/Project/jucer_ProjectContentComponent.h
+++ b/extras/Introjucer/Source/Project/jucer_ProjectContentComponent.h
@@ -86,6 +86,7 @@ protected:
Project* project;
OpenDocumentManager::Document* currentDocument;
RecentDocumentList recentDocumentList;
+ ScopedPointer logo;
TabbedComponent treeViewTabs;
ScopedPointer resizerBar;
diff --git a/extras/Introjucer/Source/Utility/jucer_Icons.cpp b/extras/Introjucer/Source/Utility/jucer_Icons.cpp
new file mode 100644
index 0000000000..4ad267515a
--- /dev/null
+++ b/extras/Introjucer/Source/Utility/jucer_Icons.cpp
@@ -0,0 +1,118 @@
+/*
+ ==============================================================================
+
+ 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 "../Application/jucer_Application.h"
+#include "jucer_Icons.h"
+
+/*static String compactSVGPath (const String& pathString)
+{
+ StringArray toks;
+ String::CharPointerType s (pathString.getCharPointer());
+
+ while (! s.isEmpty())
+ {
+ s = s.findEndOfWhitespace();
+
+ if (s.toUpperCase() >= 'A' && s.toUpperCase() <= 'Z')
+ {
+ toks.add (String::charToString (s.getAndAdvance()));
+ }
+ else
+ {
+ String::CharPointerType s2 (s);
+ double n = CharacterFunctions::readDoubleValue (s);
+
+ if (s != s2)
+ toks.add (String (n));
+ else
+ ++s;
+ }
+ }
+
+ MemoryOutputStream newPath;
+ bool lastWasDigit = false;
+
+ for (int i = 0; i < toks.size(); ++i)
+ {
+ if (toks[i].toUpperCase()[0] >= 'A' && toks[i].toUpperCase()[0] <= 'Z')
+ {
+ newPath << toks[i];
+ }
+ else
+ {
+ const double val = toks[i].getDoubleValue();
+
+ if (lastWasDigit && val >= 0)
+ newPath << ' ';
+
+ newPath << String (val, 1).trimCharactersAtEnd ("0").trimCharactersAtEnd (".");
+ lastWasDigit = true;
+ }
+ }
+
+ DBG (newPath.toString().quoted());
+ return newPath.toString();
+}
+*/
+
+static void parseSVGPath (Path& dest, const String& pathString)
+{
+ XmlElement svg ("svg");
+ XmlElement* path = svg.createNewChildElement ("path");
+ path->setAttribute ("d", pathString);
+
+ ScopedPointer d (Drawable::createFromSVG (svg));
+ DrawablePath* dp = dynamic_cast (d->getChildComponent(0));
+ jassert (dp != nullptr);
+ dest = dp->getPath();
+}
+
+Icons::Icons()
+{
+ /* Some of the icon images used here are based on icons from this project:
+ http://raphaeljs.com/icons
+ They're MIT licensed - the licensing info is on the linked page.
+
+ I thought they looked pretty stylish in this context, and it was also very
+ convenient to be able to paste-in the shapes directly as SVG path strings!
+ */
+ parseSVGPath (folder, "M76.5 116.7C 138.2 91.9 199.5 66.4 261.4 42c 26.2 4.2 17 35.3 27.5 51.8 13.2 44.1 9.7 51.5 30.2 93.1-7.8 3.2-15.6 6.3-23.4 9.5C 270 143.9 270.7 124.6 255.1 68.8 208.7 77 149.6 111.5 96.9 132.9c 20.1 70.2 40.2 142 81.8 204.1 15.2 21.5 46.2 11 56-9.5 13.2-16.5 12.1-76.1 21.4-93.8 8.2-10 16.5-13.6 27.7-19.5 50.9-20.6 101.8-41.2 152.7-61.9 17 7-2.6 67.7-8.5 82.6-12.2 28.1-28.6 40.8-52.5 58.9-59.5 23.6-104.3 55.3-164.4 77.5-25.2 5.5-48.8-11.8-59.8-32-33.5-49.1-49.9-106.1-68-161.3-5.4-17.4-10.6-34.9-14-52.7 0.6-3.8 3.5-7.2 7.3-8.6z");
+ parseSVGPath (document, "M23 5.7c-1.7-1.7-3.6-3.1-5.2-3.2c-0.1-0-0.2-0-0.3-0H 7.4c-0.2 0-0.3 0.1-0.4 0.2C 6.9 2.7 6.8 2.9 6.8 3v 25.8c 0 0.2 0.1 0.3 0.2 0.4c 0.1 0.1 0.3 0.2 0.4 0.2h 18.4c 0.2 0 0.3-0.1 0.4-0.2c 0.1-0.1 0.2-0.3 0.2-0.4V 11.6C 26.4 9.7 24.8 7.5 23 5.7zM 22.2 6.5c 0.8 0.8 1.5 1.7 2.1 2.5c-0.5-0.2-1-0.3-1.4-0.4c-1-0.2-2-0.3-2.6-0.4c 0-0.1 0-0.3 0-0.4c 0-0.9-0.1-2.1-0.4-3.2c-0-0-0-0-0-0C 20.6 5.1 21.4 5.8 22.2 6.5zM 25.2 28.2H 8.1V 3.6h 9.5v 0c 0.4-0 0.8 0.4 1.1 1.3c 0.3 0.9 0.3 2.1 0.3 2.9c 0 0.6-0 1-0 1l-0 0.7l 0.7 0c 0 0 1.5 0 3 0.4c 1.4 0.3 2.5 0.9 2.6 1.6c 0 0.1 0 0.1 0 0.2V 28.2z");
+ parseSVGPath (imageDoc, "M25.3 25.3H 6.8V 6.8h 18.5V 25.3zM 11.3 14c 1.4 0 2.6-1.2 2.6-2.6c 0-1.4-1.2-2.6-2.6-2.6c-1.4 0-2.6 1.2-2.6 2.6C 8.7 12.8 9.8 14 11.3 14zM 24.3 16.3l-4.9-4.9l-6.9 6.9L 10.5 16.3l-2.8 2.8v 5.2h 16.5V 16.3z");
+ parseSVGPath (config, "M17.4 20.4l-0.8-2.7c 0.2-0.2 0.4-0.4 0.6-0.6l 2.7 0.8c 0.3-0.4 0.5-0.9 0.8-1.3l-2-2c 0.1-0.3 0.2-0.6 0.2-0.9l 2.7-0.7c 0-0.3 0-0.5 0-0.8s-0-0.5-0-0.8l-2.7-0.7c-0.1-0.3-0.1-0.6-0.2-0.9l 2-2c-0.2-0.5-0.5-0.9-0.8-1.3l-2.7 0.8c-0.2-0.2-0.4-0.4-0.6-0.6l 0.8-2.7c-0.4-0.3-0.9-0.5-1.3-0.8l-2 2c-0.3-0.1-0.6-0.2-0.9-0.2l-0.7-2.7c-0.3-0-0.5-0-0.8-0s-0.5 0-0.8 0l-0.7 2.7c-0.3 0.1-0.6 0.1-0.9 0.2l-2-2C 7 3.5 6.6 3.7 6.2 4l 0.8 2.7C 6.7 6.9 6.5 7.1 6.3 7.4L 3.6 6.6C 3.3 7 3.1 7.4 2.8 7.9l 2 2c-0.1 0.3-0.2 0.6-0.2 0.9l-2.7 0.7c-0 0.3-0 0.5-0 0.8s 0 0.5 0 0.8l 2.7 0.7c 0.1 0.3 0.1 0.6 0.2 0.9l-2 2c 0.2 0.5 0.5 0.9 0.8 1.3l 2.7-0.8c 0.2 0.2 0.4 0.4 0.6 0.6l-0.8 2.7c 0.4 0.3 0.9 0.5 1.3 0.8l 2-2c 0.3 0.1 0.6 0.2 0.9 0.2l 0.7 2.7c 0.3 0 0.5 0 0.8 0s 0.5-0 0.8-0l 0.7-2.7c 0.3-0.1 0.6-0.1 0.9-0.2l 2 2C 16.5 20.9 17 20.7 17.4 20.4zM 11.8 15.6c-1.9 0-3.4-1.5-3.4-3.4s 1.5-3.4 3.4-3.4s 3.4 1.5 3.4 3.4S 13.7 15.6 11.8 15.6zM 27.3 22.7c 0-0.5-0.1-1.1-0.2-1.7l 1.2-1.8c-0.2-0.4-0.4-0.7-0.6-1l-2.1 0.4c-0.4-0.4-0.9-0.6-1.4-0.9l-0.6-2.1c-0.4-0.1-0.8-0.1-1.2-0.1l-1 1.9c-0.3 0.1-0.6 0.1-0.8 0.2c-0.3 0.1-0.5 0.2-0.7 0.4L 17.8 17.4c-0.3 0.3-0.6 0.5-0.8 0.9l 0.9 2c-0.3 0.5-0.4 1-0.5 1.6l-1.9 1.1c 0 0.4 0.1 0.8 0.2 1.2l 2.1 0.5c 0.2 0.5 0.5 1 0.9 1.4l-0.4 2.1c 0.3 0.2 0.7 0.4 1 0.6l 1.7-1.3c 0.5 0.1 1.1 0.2 1.7 0.2l 1.5 1.6c 0.2-0.1 0.4-0.1 0.6-0.2c 0.2-0.1 0.3-0.1 0.5-0.2l 0-2.2c 0.5-0.3 0.8-0.7 1.2-1.2l 2.2-0.1c 0.2-0.4 0.3-0.7 0.4-1.1L 27.3 22.7zM 23.1 24.7c-1.2 0.5-2.5-0.1-3-1.3s 0.1-2.5 1.3-3c 1.2-0.5 2.5 0.1 3 1.3C 24.9 22.9 24.3 24.2 23.1 24.7z");
+ parseSVGPath (graph, "M6.8 17.2l 7.4-3.7v-2.2h-0.8c-0.4 0-0.8-0.1-1.2-0.2v 1.2l-7.4 3.7v 2.9h 2V 17.2zM 26.6 18.9v-2.9l-7.4-3.7v-1.2c-0.4 0.2-0.8 0.2-1.2 0.2h-0.8l-0 2.2l 7.4 3.7v 1.7H 26.6zM 16.7 18.9v-7.5h-2v 7.5H 16.7zM 27.9 19.9H 23.3c-1.1 0-2 0.9-2 2V 26.5c 0 1.1 0.9 2 2 2h 4.6c 1.1 0 2-0.9 2-2v-4.6C 29.9 20.8 29 19.9 27.9 19.9zM 8.1 19.9H 3.5c-1.1 0-2 0.9-2 2V 26.5c 0 1.1 0.9 2 2 2h 4.6c 1.1 0 2-0.9 2-2v-4.6C 10.1 20.8 9.2 19.9 8.1 19.9zM 13.4 10.4H 18c 1.1 0 2-0.9 2-2V 3.8c 0-1.1-0.9-2-2-2h-4.6c-1.1 0-2 0.9-2 2v 4.6C 11.4 9.5 12.3 10.4 13.4 10.4zM 18 19.9h-4.6c-1.1 0-2 0.9-2 2V 26.5c 0 1.1 0.9 2 2 2H 18c 1.1 0 2-0.9 2-2v-4.6C 20 20.8 19.1 19.9 18 19.9z");
+ parseSVGPath (exporter, "M15.1 2.3c-6 0-11 3.9-12.8 9.3h 3.2c 1.6-3.7 5.3-6.3 9.6-6.3c 5.8 0 10.4 4.7 10.4 10.4c-0 5.8-4.7 10.4-10.4 10.4c-4.3-0-8-2.6-9.6-6.3H 2.3c 1.7 5.4 6.8 9.3 12.8 9.3c 7.4-0 13.4-6 13.4-13.4C 28.5 8.3 22.5 2.3 15.1 2.3zM 10.9 19.8l 7.2-4.1l-7.2-4.1v 2.3H-0.1v 3.7h 11V 19.8z");
+ parseSVGPath (jigsaw, "M3.7 13.6c 0 0 3.5-4.7 5.6-3.6c 2.1 1-0.4 2.8 1.6 3.7c 2 0.9 5-0.2 4.4-2.9c-0.7-2.7-1.9-0.8-2.8-2.2c-0.9-1.4 4.6-4.6 4.6-4.6s 3.4 6.7 4.3 4.9c 1.2-2.1 3.2-4.3 5.3-1c 0 0 1.8 2.4 0.2 3.4s-2.9 0.4-3.5 1.6c-0.6 1.1 3.8 4.1 3.8 4.1s-3 4.8-4.9 3.5c-1.9-1.3 0.4-3.4-2.6-4c-1.3-0.2-3.4 0.5-3.8 2.3c-0.1 2.7 1.6 2 2.8 3.5c 1.2 1.5-4.5 4.5-4.5 4.5s-1.6-3.9-3.8-4.7c-2.2-0.7-0.9 2.1-2.9 2.5c-2 0.4-4.8-2.4-3.5-4.8c 1.4-2.4 3.3-0 3.4-2C 7.6 16.1 3.7 13.6 3.7 13.6z");
+ parseSVGPath (info, "M16 1.5C 8 1.5 1.5 8 1.5 16c 0 8 6.5 14.5 14.5 14.5c 8 0 14.5-6.5 14.5-14.5C 30.5 8 24 1.5 16 1.5zM 14.8 8h 2.4v 2.6h-2.4V 8zM 18.8 23.6H 16.1c-1 0-1.5-0.4-1.5-1.5v-6.9c 0-0.3-0.2-0.5-0.5-0.5h-0.9V 12.4h 2.7c 1 0 1.5 0.5 1.5 1.5v 6.9c 0 0.3 0.2 0.5 0.5 0.5h 0.9V 23.6z");
+ parseSVGPath (warning, "M29.2 23.6l-3.8-6.5c-1.1-2-3-5.2-4.1-7.2l-3.8-6.5c-1.1-2-3-2-4.1 0L 9.6 9.9c-1.1 2-3 5.2-4.1 7.2L 1.7 23.6c-1.1 2-0.2 3.6 2.1 3.6h 23.4C 29.4 27.2 30.4 25.5 29.2 23.6zM 16.5 24.6h-2.2v-2.2h 2.2V 24.6zM 16.4 20.8h-2l-0.2-9.2h 2.4L 16.4 20.8z");
+ parseSVGPath (bug, "M28.6 10.9l-5.8 1.6c-0.5-1.4-1.3-2.6-2.3-3.6l 3.1-5.4c 0.3-0.5 0.1-1.1-0.4-1.4c-0.5-0.3-1.1-0.1-1.4 0.4l-2.9 5.2c-0.6-0.4-1.2-0.7-1.9-0.9c-0.4-1.4-1.7-2.4-3.1-2.6c-0-0-0-0-0-0c-0.1-0.2-0.1-0.5-0.1-0.7c-0-0.2 0-0.4 0-0.5c 0-0.1 0.1-0.2 0.1-0.3c 0.1-0.3 0.3-0.4 0.6-0.5c 0 0.3 0.1 0.5 0.4 0.6c 0.2 0.1 0.3 0.1 0.5 0.1c 0.2-0 0.4-0.2 0.5-0.4c 0.1-0.2 0.1-0.4 0.1-0.6c-0.1-0.2-0.2-0.4-0.4-0.5c-0.2-0.1-0.3-0.1-0.5-0.1c-0.2 0-0.3 0-0.5 0.1c-0.2 0.1-0.3 0.2-0.4 0.3c-0.1 0.1-0.2 0.3-0.3 0.4c-0.1 0.2-0.2 0.5-0.3 0.8c-0 0.3-0 0.6-0 0.8c 0 0.2 0.1 0.3 0.1 0.4c-0.4-0-0.8 0-1.1 0.1c-0.5 0.1-0.9 0.4-1.3 0.7c-0.1-0.2-0.1-0.3-0.2-0.5c-0.1-0.2-0.3-0.5-0.4-0.7c-0.2-0.2-0.4-0.4-0.6-0.5C 9.9 3.1 9.7 3 9.6 3c-0.2-0-0.4-0.1-0.5-0s-0.3 0.1-0.5 0.2C 8.4 3.2 8.3 3.3 8.2 3.4C 8.1 3.7 8.1 3.9 8.1 4.1c 0.1 0.2 0.2 0.4 0.4 0.5c 0.2 0.1 0.4 0.1 0.6 0.1C 9.3 4.6 9.5 4.4 9.5 4.3c 0.1-0.2 0.1-0.4-0-0.7c 0.2-0.1 0.5-0 0.8 0.1c 0.1 0 0.2 0.1 0.3 0.2c 0.1 0.1 0.2 0.2 0.3 0.4c 0.1 0.2 0.2 0.4 0.3 0.6c 0 0 0 0.1 0 0.1c-0.9 0.8-1.4 2.1-1.1 3.4c-0.6 0.6-1.1 1.3-1.5 2l-5.2-2.9c-0.5-0.3-1.1-0.1-1.4 0.4C 1.8 8.4 2 9 2.4 9.3l 5.4 3.1c-0.3 1.3-0.4 2.8-0.1 4.3l-5.8 1.6c-0.5 0.1-0.8 0.7-0.7 1.2c 0.1 0.5 0.7 0.8 1.2 0.7l 5.9-1.6c 0.5 1.1 1.4 2.3 2.4 3.4l-3.2 5.6c-0.3 0.5-0.1 1.1 0.4 1.4c 0.2 0.1 0.5 0.2 0.8 0.1c 0.2-0.1 0.5-0.2 0.6-0.5l 2.9-5.1c 2.7 2.6 5.7 4.1 5.8 1.1c 1.6 2.6 3.5-0.3 4.5-4l 5.2 2.9c 0.2 0.1 0.5 0.2 0.8 0.1c 0.2-0.1 0.5-0.2 0.6-0.5c 0.3-0.5 0.1-1.1-0.4-1.4l-5.7-3.2c 0.3-1.5 0.4-3 0.3-4.1l 5.9-1.6c 0.5-0.1 0.8-0.7 0.7-1.2C 29.7 11.1 29.1 10.8 28.6 10.9z");
+ parseSVGPath (juceLogo, "M226.7 640.4c-57 1.6-111.2 23.8-159.4 52.7-104.3 66.1-167.2 193.3-153.2 316.7 1.5 56.3 29.4 106.9 54.8 155.6 32.3 57.5 87.1 98.8 146.1 126.5 34.5 16.6 71.4 30.3 110.2 30 41.7 2.5 84.2-1.9 123.5-16 49.7-17 95-47.2 129.1-87 66.2-73.9 104.7-174.4 96.6-274.3C 567.2 882.4 542.2 822.7 505.3 772.4 475.3 731.9 435.6 699 390.4 676.6 344.4 652.3 292.3 638 240 640.6c-4.4-0.3-8.8-0.2-13.3-0.2zm 71.7 40.3c 52.3-0.1 102.3 27.3 135 67.1 16.4 23.6 16 56.1 3 81.1-0.9 2.1-3.2 6.3 1.2 4.8 17.1-1.8 33.7-12.3 51.3-7.3 9.8 2.7 15.9 11.4 22.8 18.1 21.9 25.8 26.6 61.2 26.5 94 0.8 34.6-0.4 71.5-18.5 101.9-10.6 17.3-30.6 30.8-51.5 27.2 6.5 10.9 16.5 21.3 18.5 34.6 6.8 28.3-5.8 58.8-27.7 76.9-33.9 34.1-75.4 64.7-124.5 71-21.9 3.3-47.3-0.4-62.5-17.9-13-13.5-20.4-30.9-26.9-48.1-7.3 25.7-20.4 51.1-43 66.1-16.6 12.5-39.4 17.5-59.2 9.8-44.2-12.3-80.4-42.9-110.3-76.6-19.8-24.8-22.8-63.5-2.4-88.9 2.1-3.5 6.2-8.1 7.3-10.8-23.5 4.6-51.3-1.9-64.9-22.8-22.1-36.9-21.5-82.8-13.2-123.8 4.3-20.2 9.3-40.6 18-59.3 14.1-22.7 44-29.8 69-24.7-13.3-14.6-27.6-32.3-26-53.3 2.7-18.5 19-30.1 31.2-42.6 34.3-31.4 75.9-55.3 120.8-67.6 25.4-3.4 48.6 14.6 60.4 35.8 1.7 2.9 3.1 6 4.4 9.1 14.3-18 23.7-42.5 46.1-52.2 4.8-1.6 9.9-1.7 14.9-1.7zm 14.8 24.8c-24.2-0.5-45 19.7-49.5 42.7-16.4 53.2-8.9 110.1-2.7 164.5 1.1 9.8 2.2 19.4 3.6 29.1 49.5-33.9 101.4-65.8 140.5-112.1 10.7-14.4 20.4-32.6 16.5-51.1-13.2-30.6-43.6-49.1-73-61.3-11.3-5-22.5-12.6-35.4-11.8zM 185.4 716.7C 145 720.4 110.4 744.3 78.3 767.5 64.5 778.7 49 793.3 49 812.3c 2.4 15 18 22.4 28.6 31.2 40.2 28.8 84.2 52.1 124.4 81.1 9.7 6.7 19.3 13.9 30.2 18.8 5.4-50.9 0.1-102.3-7.5-152.6-5-23.3-7.1-50.2-25.6-67.3-4-3.2-8.3-6.9-13.6-6.6zm 283 133.2c-21.7 4.1-40.8 16.5-60 26.7-24.5 13.9-47.9 29.4-71.2 45-17.7 10.9-38.9 19.8-49.9 38.3-1.1 1.7-2 4.8 1 4.9 47.7 29.2 97.9 54.6 150.5 73.5 16.1 5.1 36.3 9.3 50.8-2.3 13.4-12.4 18.2-31.1 21.7-48.3 5.2-33.4-0.1-67.5-6.6-100.4-4.5-17-15.9-38.2-36.3-37.5zM 20.1 880.4c-18.3 3.2-28.4 22.3-31.1 39-5.9 28-4.5 56.9-6.6 85.3 0 16 1.7 34.4 14 45.9 15.3 10.7 35.1 4.6 51.7 1 24.5-5.8 45.7-20.1 68.2-30.8 34.4-17.8 68.3-36.6 102.4-55.2C 201.1 946.8 174.7 939.8 153 926.8 110.8 906.8 68.6 879.3 20.1 880.4zM 266.3 988.7c-4.2 58.8-4.4 118.2 2.5 176.7 3.2 20.2 10.3 42.5 28.4 54.1 16.4 8.7 36.3 6 53.8 2.7 28-6.3 51.2-25 71.8-44.2 15-14.8 28.7-31.1 39.3-49.2 5.8-17.1-5.4-34.4-18.5-44.7-28.6-25.2-63.5-41.2-96.4-59.6-26.3-13.6-53.2-26.1-80.8-36.7l-0.1 0.9zm-28.8 0c-50.4 20.7-96.4 50.3-142.4 79.3-22 15.1-45.6 33.8-52 61.1-3 10.9 1 22 7.4 30.9 21.7 35.8 58.5 60.4 97.1 75.3 12.3 4.5 26.8 4.3 37.7-3.6 22.9-14.7 32.4-42.1 38.1-67.4 9.2-43.1 12.5-87.2 14.6-131.2 0.6-15 0.7-30 0.7-44.9l-0.9 0.4-0.3 0.1z");
+}
+
+const Icons& getIcons()
+{
+ return *JucerApplication::getApp().icons;
+}
diff --git a/extras/Introjucer/Source/Utility/jucer_Icons.h b/extras/Introjucer/Source/Utility/jucer_Icons.h
new file mode 100644
index 0000000000..9cde78f22e
--- /dev/null
+++ b/extras/Introjucer/Source/Utility/jucer_Icons.h
@@ -0,0 +1,48 @@
+/*
+ ==============================================================================
+
+ This file is part of the JUCE library - "Jules' Utility Class Extensions"
+ Copyright 2004-11 by Raw Material Software Ltd.
+
+ ------------------------------------------------------------------------------
+
+ JUCE can be redistributed and/or modified under the terms of the GNU General
+ Public License (Version 2), as published by the Free Software Foundation.
+ A copy of the license is included in the JUCE distribution, or can be found
+ online at www.gnu.org/licenses.
+
+ JUCE is distributed in the hope that it will be useful, but WITHOUT ANY
+ WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
+ A PARTICULAR PURPOSE. See the GNU General Public License for more details.
+
+ ------------------------------------------------------------------------------
+
+ To release a closed-source product which uses JUCE, commercial licenses are
+ available: visit www.rawmaterialsoftware.com/juce for more information.
+
+ ==============================================================================
+*/
+
+#ifndef __JUCER_ICONS_H_D702578A__
+#define __JUCER_ICONS_H_D702578A__
+
+
+//==============================================================================
+class Icons
+{
+public:
+ Icons();
+
+ Path folder, document, imageDoc,
+ config, exporter, juceLogo,
+ graph, jigsaw, info, warning,
+ bug, mainJuceLogo;
+
+private:
+ JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (Icons);
+};
+
+const Icons& getIcons();
+
+
+#endif // __JUCER_ICONS_H_D702578A__
diff --git a/extras/Introjucer/Source/Utility/jucer_StoredSettings.cpp b/extras/Introjucer/Source/Utility/jucer_StoredSettings.cpp
index f9b50799db..450a2da4d4 100644
--- a/extras/Introjucer/Source/Utility/jucer_StoredSettings.cpp
+++ b/extras/Introjucer/Source/Utility/jucer_StoredSettings.cpp
@@ -184,50 +184,3 @@ void StoredSettings::ColourSelectorWithSwatches::setSwatchColour (int index, con
{
getAppSettings().swatchColours.set (index, newColour);
}
-
-//==============================================================================
-const Icons& getIcons()
-{
- return *JucerApplication::getApp().icons;
-}
-
-Icons::Icons()
-{
- reload (Colours::white);
-}
-
-static void parseSVGPath (Path& dest, const char* pathString)
-{
- XmlElement svg ("svg");
- XmlElement* path = svg.createNewChildElement ("path");
- path->setAttribute ("d", pathString);
-
- ScopedPointer d (Drawable::createFromSVG (svg));
- DrawablePath* dp = dynamic_cast (d->getChildComponent(0));
- jassert (dp != nullptr);
- dest = dp->getPath();
-}
-
-void Icons::reload (const Colour& /*backgroundColour*/)
-{
- const Colour iconColour (Colours::darkgrey);
-
- /* Some of the icon images used here are based on icons from this project:
- http://raphaeljs.com/icons
- They're MIT licensed - the licensing info is on the linked page.
-
- I thought they looked pretty stylish in this context, and it was also very
- convenient to be able to paste-in the shapes directly as SVG path strings!
- */
- parseSVGPath (folder, "M76.531972,116.65943 C138.19864,91.877357 199.54658,66.389965 261.4126,42.049945 c26.20551,4.17061 17.00846,35.348262 27.46812,51.842442 13.17191,44.087933 9.69881,51.512093 30.18158,93.124923 -7.79805,3.15935 -15.59597,6.3187 -23.39388,9.47805 C269.9507,143.92299 270.68187,124.6488 255.14018,68.762725 208.6656,76.96787 149.63136,111.49835 96.876892,132.86616 c 20.096368,70.18096 40.229418,141.99553 81.756898,204.0512 15.24262,21.51974 46.21675,10.98988 56.02749,-9.54254 13.20038,-16.5246 12.12083,-76.13991 21.41808,-93.76216 8.17116,-9.97231 16.50664,-13.63709 27.69311,-19.48495 50.88575,-20.6198 101.77151,-41.23961 152.65739,-61.85942 16.97618,7.01928 -2.60481,67.74804 -8.54318,82.55545 -12.1959,28.12442 -28.64236,40.75479 -52.50229,58.90091 -59.50287,23.63196 -104.33289,55.33391 -164.43294,77.49302 -25.20592,5.49938 -48.76333,-11.78739 -59.77927,-31.99889 -33.49404,-49.05055 -49.87845,-106.05947 -67.959828,-161.26271 -5.38388,-17.37827 -10.5735,-34.85117 -13.98158,-52.68629 0.58247,-3.82935 3.52241,-7.1755 7.3012,-8.61035 z");
- parseSVGPath (document, "M23.024,5.673c-1.744-1.694-3.625-3.051-5.168-3.236c-0.084-0.012-0.171-0.019-0.263-0.021H7.438c-0.162,0-0.322,0.063-0.436,0.18C6.889,2.71,6.822,2.87,6.822,3.033v25.75c0,0.162,0.063,0.317,0.18,0.435c0.117,0.116,0.271,0.179,0.436,0.179h18.364c0.162,0,0.317-0.062,0.434-0.179c0.117-0.117,0.182-0.272,0.182-0.435V11.648C26.382,9.659,24.824,7.49,23.024,5.673zM22.157,6.545c0.805,0.786,1.529,1.676,2.069,2.534c-0.468-0.185-0.959-0.322-1.42-0.431c-1.015-0.228-2.008-0.32-2.625-0.357c0.003-0.133,0.004-0.283,0.004-0.446c0-0.869-0.055-2.108-0.356-3.2c-0.003-0.01-0.005-0.02-0.009-0.03C20.584,5.119,21.416,5.788,22.157,6.545zM25.184,28.164H8.052V3.646h9.542v0.002c0.416-0.025,0.775,0.386,1.05,1.326c0.25,0.895,0.313,2.062,0.312,2.871c0.002,0.593-0.027,0.991-0.027,0.991l-0.049,0.652l0.656,0.007c0.003,0,1.516,0.018,3,0.355c1.426,0.308,2.541,0.922,2.645,1.617c0.004,0.062,0.005,0.124,0.004,0.182V28.164z");
- parseSVGPath (imageDoc, "M25.25,25.25H6.75V6.75h18.5V25.25zM11.25,14c1.426,0,2.583-1.157,2.583-2.583c0-1.427-1.157-2.583-2.583-2.583c-1.427,0-2.583,1.157-2.583,2.583C8.667,12.843,9.823,14,11.25,14zM24.251,16.25l-4.917-4.917l-6.917,6.917L10.5,16.333l-2.752,2.752v5.165h16.503V16.25z");
- parseSVGPath (config, "M17.41,20.395l-0.778-2.723c0.228-0.2,0.442-0.414,0.644-0.643l2.721,0.778c0.287-0.418,0.534-0.862,0.755-1.323l-2.025-1.96c0.097-0.288,0.181-0.581,0.241-0.883l2.729-0.684c0.02-0.252,0.039-0.505,0.039-0.763s-0.02-0.51-0.039-0.762l-2.729-0.684c-0.061-0.302-0.145-0.595-0.241-0.883l2.026-1.96c-0.222-0.46-0.469-0.905-0.756-1.323l-2.721,0.777c-0.201-0.228-0.416-0.442-0.644-0.643l0.778-2.722c-0.418-0.286-0.863-0.534-1.324-0.755l-1.96,2.026c-0.287-0.097-0.581-0.18-0.883-0.241l-0.683-2.73c-0.253-0.019-0.505-0.039-0.763-0.039s-0.51,0.02-0.762,0.039l-0.684,2.73c-0.302,0.061-0.595,0.144-0.883,0.241l-1.96-2.026C7.048,3.463,6.604,3.71,6.186,3.997l0.778,2.722C6.736,6.919,6.521,7.134,6.321,7.361L3.599,6.583C3.312,7.001,3.065,7.446,2.844,7.907l2.026,1.96c-0.096,0.288-0.18,0.581-0.241,0.883l-2.73,0.684c-0.019,0.252-0.039,0.505-0.039,0.762s0.02,0.51,0.039,0.763l2.73,0.684c0.061,0.302,0.145,0.595,0.241,0.883l-2.026,1.96c0.221,0.46,0.468,0.905,0.755,1.323l2.722-0.778c0.2,0.229,0.415,0.442,0.643,0.643l-0.778,2.723c0.418,0.286,0.863,0.533,1.323,0.755l1.96-2.026c0.288,0.097,0.581,0.181,0.883,0.241l0.684,2.729c0.252,0.02,0.505,0.039,0.763,0.039s0.51-0.02,0.763-0.039l0.683-2.729c0.302-0.061,0.596-0.145,0.883-0.241l1.96,2.026C16.547,20.928,16.992,20.681,17.41,20.395zM11.798,15.594c-1.877,0-3.399-1.522-3.399-3.399s1.522-3.398,3.399-3.398s3.398,1.521,3.398,3.398S13.675,15.594,11.798,15.594zM27.29,22.699c0.019-0.547-0.06-1.104-0.23-1.654l1.244-1.773c-0.188-0.35-0.4-0.682-0.641-0.984l-2.122,0.445c-0.428-0.364-0.915-0.648-1.436-0.851l-0.611-2.079c-0.386-0.068-0.777-0.105-1.173-0.106l-0.974,1.936c-0.279,0.054-0.558,0.128-0.832,0.233c-0.257,0.098-0.497,0.22-0.727,0.353L17.782,17.4c-0.297,0.262-0.568,0.545-0.813,0.852l0.907,1.968c-0.259,0.495-0.437,1.028-0.519,1.585l-1.891,1.06c0.019,0.388,0.076,0.776,0.164,1.165l2.104,0.519c0.231,0.524,0.541,0.993,0.916,1.393l-0.352,2.138c0.32,0.23,0.66,0.428,1.013,0.6l1.715-1.32c0.536,0.141,1.097,0.195,1.662,0.15l1.452,1.607c0.2-0.057,0.399-0.118,0.596-0.193c0.175-0.066,0.34-0.144,0.505-0.223l0.037-2.165c0.455-0.339,0.843-0.747,1.152-1.206l2.161-0.134c0.152-0.359,0.279-0.732,0.368-1.115L27.29,22.699zM23.127,24.706c-1.201,0.458-2.545-0.144-3.004-1.345s0.143-2.546,1.344-3.005c1.201-0.458,2.547,0.144,3.006,1.345C24.931,22.902,24.328,24.247,23.127,24.706z");
- parseSVGPath (graph, "M6.812,17.202l7.396-3.665v-2.164h-0.834c-0.414,0-0.808-0.084-1.167-0.237v1.159l-7.396,3.667v2.912h2V17.202zM26.561,18.875v-2.913l-7.396-3.666v-1.158c-0.358,0.152-0.753,0.236-1.166,0.236h-0.832l-0.001,2.164l7.396,3.666v1.672H26.561zM16.688,18.875v-7.501h-2v7.501H16.688zM27.875,19.875H23.25c-1.104,0-2,0.896-2,2V26.5c0,1.104,0.896,2,2,2h4.625c1.104,0,2-0.896,2-2v-4.625C29.875,20.771,28.979,19.875,27.875,19.875zM8.125,19.875H3.5c-1.104,0-2,0.896-2,2V26.5c0,1.104,0.896,2,2,2h4.625c1.104,0,2-0.896,2-2v-4.625C10.125,20.771,9.229,19.875,8.125,19.875zM13.375,10.375H18c1.104,0,2-0.896,2-2V3.75c0-1.104-0.896-2-2-2h-4.625c-1.104,0-2,0.896-2,2v4.625C11.375,9.479,12.271,10.375,13.375,10.375zM18,19.875h-4.625c-1.104,0-2,0.896-2,2V26.5c0,1.104,0.896,2,2,2H18c1.104,0,2-0.896,2-2v-4.625C20,20.771,19.104,19.875,18,19.875z");
- parseSVGPath (exporter, "M15.067,2.25c-5.979,0-11.035,3.91-12.778,9.309h3.213c1.602-3.705,5.271-6.301,9.565-6.309c5.764,0.01,10.428,4.674,10.437,10.437c-0.009,5.764-4.673,10.428-10.437,10.438c-4.294-0.007-7.964-2.605-9.566-6.311H2.289c1.744,5.399,6.799,9.31,12.779,9.312c7.419-0.002,13.437-6.016,13.438-13.438C28.504,8.265,22.486,2.252,15.067,2.25zM10.918,19.813l7.15-4.126l-7.15-4.129v2.297H-0.057v3.661h10.975V19.813z");
- parseSVGPath (jigsaw, "M3.739,13.619c0,0,3.516-4.669,5.592-3.642c2.077,1.027-0.414,2.795,1.598,3.719c2.011,0.924,5.048-0.229,4.376-2.899c-0.672-2.67-1.866-0.776-2.798-2.208c-0.934-1.432,4.586-4.59,4.586-4.59s3.361,6.651,4.316,4.911c1.157-2.105,3.193-4.265,5.305-1.025c0,0,1.814,2.412,0.246,3.434s-2.917,0.443-3.506,1.553c-0.586,1.112,3.784,4.093,3.784,4.093s-2.987,4.81-4.926,3.548c-1.939-1.262,0.356-3.364-2.599-3.989c-1.288-0.23-3.438,0.538-3.818,2.34c-0.13,2.709,1.604,2.016,2.797,3.475c1.191,1.457-4.484,4.522-4.484,4.522s-1.584-3.923-3.811-4.657c-2.227-0.735-0.893,2.135-2.917,2.531c-2.024,0.396-4.816-2.399-3.46-4.789c1.358-2.391,3.275-0.044,3.441-1.951C7.629,16.087,3.739,13.619,3.739,13.619z");
- parseSVGPath (info, "M16,1.466C7.973,1.466,1.466,7.973,1.466,16c0,8.027,6.507,14.534,14.534,14.534c8.027,0,14.534-6.507,14.534-14.534C30.534,7.973,24.027,1.466,16,1.466z M14.757,8h2.42v2.574h-2.42V8z M18.762,23.622H16.1c-1.034,0-1.475-0.44-1.475-1.496v-6.865c0-0.33-0.176-0.484-0.484-0.484h-0.88V12.4h2.662c1.035,0,1.474,0.462,1.474,1.496v6.887c0,0.309,0.176,0.484,0.484,0.484h0.88V23.622z");
- parseSVGPath (warning, "M29.225,23.567l-3.778-6.542c-1.139-1.972-3.002-5.2-4.141-7.172l-3.778-6.542c-1.14-1.973-3.003-1.973-4.142,0L9.609,9.853c-1.139,1.972-3.003,5.201-4.142,7.172L1.69,23.567c-1.139,1.974-0.207,3.587,2.071,3.587h23.391C29.432,27.154,30.363,25.541,29.225,23.567zM16.536,24.58h-2.241v-2.151h2.241V24.58zM16.428,20.844h-2.023l-0.201-9.204h2.407L16.428,20.844z");
- parseSVGPath (bug, "M28.589,10.903l-5.828,1.612c-0.534-1.419-1.338-2.649-2.311-3.628l3.082-5.44c0.271-0.48,0.104-1.092-0.38-1.365c-0.479-0.271-1.09-0.102-1.36,0.377l-2.924,5.162c-0.604-0.383-1.24-0.689-1.9-0.896c-0.416-1.437-1.652-2.411-3.058-2.562c-0.001-0.004-0.002-0.008-0.003-0.012c-0.061-0.242-0.093-0.46-0.098-0.65c-0.005-0.189,0.012-0.351,0.046-0.479c0.037-0.13,0.079-0.235,0.125-0.317c0.146-0.26,0.34-0.43,0.577-0.509c0.023,0.281,0.142,0.482,0.352,0.601c0.155,0.088,0.336,0.115,0.546,0.086c0.211-0.031,0.376-0.152,0.496-0.363c0.105-0.186,0.127-0.389,0.064-0.607c-0.064-0.219-0.203-0.388-0.414-0.507c-0.154-0.087-0.314-0.131-0.482-0.129c-0.167,0.001-0.327,0.034-0.481,0.097c-0.153,0.063-0.296,0.16-0.429,0.289c-0.132,0.129-0.241,0.271-0.33,0.426c-0.132,0.234-0.216,0.496-0.25,0.783c-0.033,0.286-0.037,0.565-0.009,0.84c0.017,0.16,0.061,0.301,0.094,0.449c-0.375-0.021-0.758,0.002-1.14,0.108c-0.482,0.133-0.913,0.36-1.28,0.653c-0.052-0.172-0.098-0.344-0.18-0.518c-0.116-0.249-0.263-0.486-0.438-0.716c-0.178-0.229-0.384-0.41-0.618-0.543C9.904,3.059,9.737,2.994,9.557,2.951c-0.18-0.043-0.352-0.052-0.516-0.027s-0.318,0.08-0.463,0.164C8.432,3.172,8.318,3.293,8.23,3.445C8.111,3.656,8.08,3.873,8.136,4.092c0.058,0.221,0.181,0.384,0.367,0.49c0.21,0.119,0.415,0.138,0.611,0.056C9.31,4.556,9.451,4.439,9.539,4.283c0.119-0.21,0.118-0.443-0.007-0.695c0.244-0.055,0.497-0.008,0.757,0.141c0.081,0.045,0.171,0.115,0.27,0.208c0.097,0.092,0.193,0.222,0.286,0.388c0.094,0.166,0.179,0.368,0.251,0.608c0.013,0.044,0.023,0.098,0.035,0.146c-0.911,0.828-1.357,2.088-1.098,3.357c-0.582,0.584-1.072,1.27-1.457,2.035l-5.16-2.926c-0.48-0.271-1.092-0.102-1.364,0.377C1.781,8.404,1.95,9.016,2.43,9.289l5.441,3.082c-0.331,1.34-0.387,2.807-0.117,4.297l-5.828,1.613c-0.534,0.147-0.846,0.699-0.698,1.231c0.147,0.53,0.697,0.843,1.231,0.694l5.879-1.627c0.503,1.057,1.363,2.28,2.371,3.443l-3.194,5.639c-0.272,0.481-0.104,1.092,0.378,1.363c0.239,0.137,0.512,0.162,0.758,0.094c0.248-0.068,0.469-0.229,0.604-0.471l2.895-5.109c2.7,2.594,5.684,4.123,5.778,1.053c1.598,2.56,3.451-0.338,4.502-3.976l5.203,2.947c0.24,0.138,0.514,0.162,0.762,0.094c0.246-0.067,0.467-0.229,0.603-0.471c0.272-0.479,0.104-1.091-0.377-1.362l-5.701-3.229c0.291-1.505,0.422-2.983,0.319-4.138l5.886-1.627c0.53-0.147,0.847-0.697,0.696-1.229C29.673,11.068,29.121,10.756,28.589,10.903z");
- parseSVGPath (juceLogo, "m 226.71875,640.375 c -56.99408,1.56754 -111.18038,23.80099 -159.43389,52.66737 -104.267779,66.12142 -167.214089,193.33165 -153.229227,316.70733 1.455594,56.2935 29.367263,106.8637 54.813192,155.5574 32.2833427,57.4778 87.096691,98.824 146.096085,126.4675 34.459,16.5762 71.43208,30.2743 110.22105,29.9996 41.7349,2.5433 84.18935,-1.8849 123.53279,-16.0242 49.72408,-16.9518 94.95516,-47.1748 129.08082,-87.0195 66.17586,-73.9333 104.66139,-174.3928 96.60668,-274.293 C 567.22597,882.4317 542.22166,822.67583 505.30261,772.42149 475.25252,731.89033 435.60589,698.98852 390.4375,676.5625 344.40282,652.29698 292.32239,637.95987 239.97115,640.55833 c -4.41353,-0.26361 -8.8334,-0.24472 -13.2524,-0.18333 z m 71.6875,40.3125 c 52.29694,-0.0589 102.30966,27.27989 135.03125,67.125 16.38768,23.55419 15.97611,56.0808 3,81.0625 -0.89709,2.12007 -3.20133,6.31393 1.1875,4.8125 17.13846,-1.81696 33.70477,-12.25363 51.28125,-7.28125 9.81406,2.71282 15.88015,11.3691 22.8125,18.125 21.89419,25.83223 26.55122,61.17718 26.52278,93.99927 0.84842,34.55216 -0.3916,71.47958 -18.46485,101.87628 -10.61817,17.2887 -30.60262,30.8143 -51.52668,27.2182 6.53443,10.9013 16.45894,21.2775 18.53125,34.625 6.836,28.301 -5.78935,58.7709 -27.66421,76.9455 -33.94393,34.129 -75.43144,64.723 -124.45162,71.0334 -21.92774,3.3285 -47.30015,-0.351 -62.47792,-17.8851 -12.96952,-13.4815 -20.36114,-30.9142 -26.9375,-48.125 -7.28697,25.6616 -20.36182,51.0865 -43,66.125 -16.57012,12.5352 -39.41381,17.4767 -59.1845,9.803 -44.196528,-12.2652 -80.448516,-42.919 -110.253,-76.5843 -19.821933,-24.756 -22.799794,-63.533 -2.35935,-88.8829 2.051664,-3.5171 6.168222,-8.1435 7.3281,-10.8358 -23.477164,4.5842 -51.258378,-1.8967 -64.875,-22.8126 -22.135167,-36.8733 -21.504266,-82.75507 -13.220083,-123.78463 4.277042,-20.19906 9.281281,-40.57784 18.001333,-59.34032 14.0916026,-22.65588 44.004048,-29.75645 69.03125,-24.71875 -13.289023,-14.62269 -27.612436,-32.32324 -26,-53.28125 2.736227,-18.45911 18.987111,-30.13762 31.1875,-42.625 34.25265,-31.40639 75.85241,-55.25213 120.75,-67.625 25.41838,-3.41501 48.55725,14.64353 60.375,35.8125 1.65207,2.94869 3.05098,6.02422 4.40625,9.125 14.33191,-18.00886 23.6714,-42.54897 46.09375,-52.1875 4.76985,-1.62932 9.86947,-1.67706 14.875,-1.71875 z m 14.8125,24.8125 c -24.24222,-0.48473 -44.95864,19.6561 -49.51669,42.68581 -16.37662,53.2462 -8.86215,110.05358 -2.67108,164.47772 1.08726,9.75459 2.18322,19.42547 3.56277,29.11772 49.52857,-33.9414 101.37048,-65.84836 140.5,-112.125 10.73623,-14.43269 20.43726,-32.55176 16.46875,-51.0625 -13.22376,-30.64017 -43.56099,-49.14553 -72.96875,-61.28125 -11.32853,-5.04651 -22.53581,-12.55562 -35.375,-11.8125 z M 185.4375,716.6875 C 145.04545,720.37564 110.36065,744.27492 78.27454,767.46605 64.467966,778.68347 49.024241,793.29139 49,812.25 c 2.401796,15.04545 17.965127,22.35847 28.625,31.15625 40.22516,28.82063 84.20142,52.12688 124.4226,81.05947 9.73772,6.73911 19.30281,13.93185 30.17115,18.75303 5.40637,-50.88055 0.11384,-102.29652 -7.54241,-152.57382 -5.03944,-23.32537 -7.12113,-50.19327 -25.60586,-67.31026 -3.97229,-3.17269 -8.29901,-6.87017 -13.63298,-6.64717 z m 283.03125,133.21875 c -21.71407,4.10015 -40.79284,16.46996 -59.99967,26.71125 -24.47547,13.89515 -47.89911,29.44612 -71.18783,45.0075 -17.65018,10.91269 -38.87344,19.80205 -49.9375,38.34375 -1.07095,1.67629 -1.99963,4.78752 1,4.875 47.67471,29.17803 97.85463,54.64555 150.53125,73.53125 16.08979,5.1109 36.33354,9.3151 50.75,-2.25 13.41469,-12.3697 18.24333,-31.1337 21.65625,-48.34375 5.17223,-33.44245 -0.0992,-67.5131 -6.5625,-100.40625 -4.53352,-16.95797 -15.85663,-38.22282 -36.25,-37.46875 z M 20.09375,880.375 c -18.3160208,3.19225 -28.4097887,22.34029 -31.058157,39.03924 -5.898795,27.99205 -4.463086,56.87783 -6.598093,85.30456 0.0467,15.9632 1.706786,34.3931 13.96875,45.875 15.343265,10.7193 35.079198,4.6499 51.686849,0.9994 24.523014,-5.8043 45.674443,-20.0613 68.234281,-30.763 34.37491,-17.8267 68.33991,-36.60555 102.36012,-55.23645 C 201.06504,946.78389 174.69653,939.76407 153.04114,926.75863 110.7578,906.77884 68.571387,879.29607 20.09375,880.375 z M 266.25,988.71875 c -4.21951,58.78315 -4.35869,118.16615 2.53125,176.68745 3.19314,20.2496 10.29998,42.483 28.40625,54.0626 16.44468,8.7069 36.25043,5.9617 53.78125,2.7187 28.04478,-6.2942 51.15401,-25.0073 71.8125,-44.2187 14.97029,-14.8218 28.65322,-31.1399 39.28125,-49.1876 5.81549,-17.1107 -5.42162,-34.4079 -18.5,-44.6562 -28.58672,-25.1533 -63.45719,-41.1614 -96.44246,-59.607 -26.30335,-13.6477 -53.15016,-26.09952 -80.77629,-36.7055 l -0.0937,0.90625 z m -28.8125,0 c -50.35399,20.71405 -96.44157,50.34965 -142.40625,79.34375 -22.04669,15.1284 -45.6492,33.8343 -51.96875,61.0937 -2.959174,10.8866 1.033298,21.9924 7.375,30.9063 21.717341,35.8431 58.49729,60.4271 97.0625,75.3125 12.27062,4.527 26.78505,4.3023 37.71875,-3.5625 22.85956,-14.6771 32.41482,-42.1408 38.09375,-67.4063 9.20531,-43.1093 12.5477,-87.2282 14.60093,-131.218 0.55446,-14.9723 0.73719,-29.9561 0.71157,-44.9382 l -0.93016,0.36717 -0.25734,0.10158 z");
-}
diff --git a/extras/Introjucer/Source/Utility/jucer_StoredSettings.h b/extras/Introjucer/Source/Utility/jucer_StoredSettings.h
index 4a4fb7e076..5f8534d3c2 100644
--- a/extras/Introjucer/Source/Utility/jucer_StoredSettings.h
+++ b/extras/Introjucer/Source/Utility/jucer_StoredSettings.h
@@ -78,22 +78,4 @@ StoredSettings& getAppSettings();
PropertiesFile& getAppProperties();
-//==============================================================================
-class Icons
-{
-public:
- Icons();
-
- void reload (const Colour& backgroundColour);
-
- Path folder, document, imageDoc, config, exporter,
- juceLogo, graph, jigsaw, info, warning, bug;
-
-private:
- JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (Icons);
-};
-
-const Icons& getIcons();
-
-
#endif // __JUCER_STOREDSETTINGS_JUCEHEADER__
diff --git a/modules/juce_gui_basics/drawables/juce_SVGParser.cpp b/modules/juce_gui_basics/drawables/juce_SVGParser.cpp
index 6ebfdcffc2..773fd8b3e3 100644
--- a/modules/juce_gui_basics/drawables/juce_SVGParser.cpp
+++ b/modules/juce_gui_basics/drawables/juce_SVGParser.cpp
@@ -400,6 +400,7 @@ private:
path.closeSubPath();
last = last2 = subpathStart;
d = d.findEndOfWhitespace();
+ lastCommandChar = 'M';
break;
default:
diff --git a/modules/juce_gui_extra/code_editor/juce_CodeEditorComponent.cpp b/modules/juce_gui_extra/code_editor/juce_CodeEditorComponent.cpp
index 1be945be50..6bca0db19b 100644
--- a/modules/juce_gui_extra/code_editor/juce_CodeEditorComponent.cpp
+++ b/modules/juce_gui_extra/code_editor/juce_CodeEditorComponent.cpp
@@ -132,8 +132,7 @@ private:
{
SyntaxToken (const String& t, const int len, const int type) noexcept
: text (t), length (len), tokenType (type)
- {
- }
+ {}
bool operator== (const SyntaxToken& other) const noexcept
{
@@ -201,9 +200,10 @@ private:
const int spacesNeeded = spacesPerTab - ((tabPos + x) % spacesPerTab);
t.text = t.text.replaceSection (tabPos, 1, String::repeatedString (" ", spacesNeeded));
+ t.length = t.text.length();
}
- x += t.text.length();
+ x += t.length;
}
}