From 74571aba11bfb6b79d4438fabf0ac9ad94db22f4 Mon Sep 17 00:00:00 2001 From: jules Date: Sun, 26 Oct 2014 17:39:49 +0000 Subject: [PATCH] New class: MountedVolumeListChangeDetector --- .../MacOSX/JuceDemo.xcodeproj/project.pbxproj | 4 +- .../Builds/VisualStudio2010/JuceDemo.vcxproj | 1 + .../VisualStudio2010/JuceDemo.vcxproj.filters | 3 + .../Builds/VisualStudio2012/JuceDemo.vcxproj | 1 + .../VisualStudio2012/JuceDemo.vcxproj.filters | 3 + .../Builds/VisualStudio2013/JuceDemo.vcxproj | 1 + .../VisualStudio2013/JuceDemo.vcxproj.filters | 3 + .../iOS/JuceDemo.xcodeproj/project.pbxproj | 2 + .../Builds/CodeBlocks/The Introjucer.cbp | 4 ++ .../The Introjucer.xcodeproj/project.pbxproj | 2 + .../VisualStudio2005/The Introjucer.vcproj | 1 + .../VisualStudio2008/The Introjucer.vcproj | 1 + .../VisualStudio2010/The Introjucer.vcxproj | 1 + .../The Introjucer.vcxproj.filters | 3 + .../VisualStudio2012/The Introjucer.vcxproj | 1 + .../The Introjucer.vcxproj.filters | 3 + .../VisualStudio2013/The Introjucer.vcxproj | 1 + .../The Introjucer.vcxproj.filters | 3 + .../JuceDemoPlugin.xcodeproj/project.pbxproj | 2 + .../VisualStudio2005/JuceDemoPlugin.vcproj | 1 + .../VisualStudio2008/JuceDemoPlugin.vcproj | 1 + .../VisualStudio2010/JuceDemoPlugin.vcxproj | 1 + .../JuceDemoPlugin.vcxproj.filters | 3 + .../Plugin Host.xcodeproj/project.pbxproj | 6 +- .../VisualStudio2010/Plugin Host.vcxproj | 1 + .../Plugin Host.vcxproj.filters | 3 + .../BinaryBuilder.xcodeproj/project.pbxproj | 2 + .../VisualStudio2008/BinaryBuilder.vcproj | 1 + .../HelloWorld.xcodeproj/project.pbxproj | 2 + .../Builds/VisualStudio2005/HelloWorld.vcproj | 1 + .../Builds/VisualStudio2008/HelloWorld.vcproj | 1 + .../iOS/HelloWorld.xcodeproj/project.pbxproj | 2 + .../Builds/VisualStudio2008/juce_dll.vcproj | 1 + .../juce_MountedVolumeListChangeDetector.h | 63 +++++++++++++++++++ modules/juce_core/juce_core.h | 1 + modules/juce_core/native/juce_mac_Files.mm | 49 +++++++++++++++ modules/juce_core/native/juce_win32_Files.cpp | 28 +++++++++ 37 files changed, 204 insertions(+), 3 deletions(-) create mode 100644 modules/juce_core/files/juce_MountedVolumeListChangeDetector.h diff --git a/extras/Demo/Builds/MacOSX/JuceDemo.xcodeproj/project.pbxproj b/extras/Demo/Builds/MacOSX/JuceDemo.xcodeproj/project.pbxproj index 3f4edc7c40..0590e74ae6 100644 --- a/extras/Demo/Builds/MacOSX/JuceDemo.xcodeproj/project.pbxproj +++ b/extras/Demo/Builds/MacOSX/JuceDemo.xcodeproj/project.pbxproj @@ -87,6 +87,7 @@ 01C6528C4A0646873D4C3429 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = AudioLatencyDemo.cpp; path = ../../Source/Demos/AudioLatencyDemo.cpp; sourceTree = "SOURCE_ROOT"; }; 01F2CB80C1B14450528F0FA8 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Identifier.cpp"; path = "../../../../modules/juce_core/text/juce_Identifier.cpp"; sourceTree = "SOURCE_ROOT"; }; 01F49D3FD943424005FB512F = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_FileChooser.cpp"; path = "../../../../modules/juce_gui_basics/native/juce_android_FileChooser.cpp"; sourceTree = "SOURCE_ROOT"; }; + 02628740749F0BD4C9193070 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MountedVolumeListChangeDetector.h"; path = "../../../../modules/juce_core/files/juce_MountedVolumeListChangeDetector.h"; sourceTree = "SOURCE_ROOT"; }; 02659911BD886D2E8431B912 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LocalisedStrings.h"; path = "../../../../modules/juce_core/text/juce_LocalisedStrings.h"; sourceTree = "SOURCE_ROOT"; }; 02ABF8C447E1A47845F6027D = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DrawableText.cpp"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawableText.cpp"; sourceTree = "SOURCE_ROOT"; }; 02F0BF69062E8D9583F13C83 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Drawable.cpp"; path = "../../../../modules/juce_gui_basics/drawables/juce_Drawable.cpp"; sourceTree = "SOURCE_ROOT"; }; @@ -934,7 +935,6 @@ E6E0ADA4E3632540A8ADC7D8 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ConnectedChildProcess.cpp"; path = "../../../../modules/juce_events/interprocess/juce_ConnectedChildProcess.cpp"; sourceTree = "SOURCE_ROOT"; }; E6E0FE3CBDBE2554B527CF60 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioSourcePlayer.cpp"; path = "../../../../modules/juce_audio_devices/sources/juce_AudioSourcePlayer.cpp"; sourceTree = "SOURCE_ROOT"; }; E70A283A87989F5A1CEDE6A4 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ResamplingAudioSource.cpp"; path = "../../../../modules/juce_audio_basics/sources/juce_ResamplingAudioSource.cpp"; sourceTree = "SOURCE_ROOT"; }; - E7113B21A18CD89165BAFD4B = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Messaging.cpp"; path = "../../../../modules/juce_events/native/juce_android_Messaging.cpp"; sourceTree = "SOURCE_ROOT"; }; E7EA99CD84E1EC598F4984DD = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Array.h"; path = "../../../../modules/juce_core/containers/juce_Array.h"; sourceTree = "SOURCE_ROOT"; }; E7EE6BDC0E3A0739529AED91 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioSubsectionReader.cpp"; path = "../../../../modules/juce_audio_formats/format/juce_AudioSubsectionReader.cpp"; sourceTree = "SOURCE_ROOT"; }; E80CA3836329ED0EEC74BAE6 = {isa = PBXFileReference; lastKnownFileType = file.nib; name = RecentFilesMenuTemplate.nib; path = RecentFilesMenuTemplate.nib; sourceTree = "SOURCE_ROOT"; }; @@ -944,6 +944,7 @@ DEE5EFE8148FD2DC743A7DD7 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = LookAndFeelDemo.cpp; path = ../../Source/Demos/LookAndFeelDemo.cpp; sourceTree = "SOURCE_ROOT"; }; E5E02A3C4E942105FEDCA885 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_ChannelRemappingAudioSource.h"; path = "../../../../modules/juce_audio_basics/sources/juce_ChannelRemappingAudioSource.h"; sourceTree = "SOURCE_ROOT"; }; E682A3A52BD15D5CA4933C12 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_RelativeParallelogram.h"; path = "../../../../modules/juce_gui_basics/positioning/juce_RelativeParallelogram.h"; sourceTree = "SOURCE_ROOT"; }; + E7113B21A18CD89165BAFD4B = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_Messaging.cpp"; path = "../../../../modules/juce_events/native/juce_android_Messaging.cpp"; sourceTree = "SOURCE_ROOT"; }; E7A5AF3EBCFEEF8787F2D14F = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MidiKeyboardComponent.cpp"; path = "../../../../modules/juce_audio_utils/gui/juce_MidiKeyboardComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; E7B21011F93915ADD2CC5DD9 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GlyphArrangement.cpp"; path = "../../../../modules/juce_graphics/fonts/juce_GlyphArrangement.cpp"; sourceTree = "SOURCE_ROOT"; }; E8128A35828C860977FEC54C = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioFormatWriter.cpp"; path = "../../../../modules/juce_audio_formats/format/juce_AudioFormatWriter.cpp"; sourceTree = "SOURCE_ROOT"; }; @@ -1421,6 +1422,7 @@ A6EE2D5A258294BAC600F75B, 0F518E75055A9D954B52DAC4, 44879946DE89AF141BE428B6, + 02628740749F0BD4C9193070, 5D40332D94747C3190D4CC16, 2174CAEE6D8EB215ACD4A256, 4198EE3311A171C884A5FA9F, diff --git a/extras/Demo/Builds/VisualStudio2010/JuceDemo.vcxproj b/extras/Demo/Builds/VisualStudio2010/JuceDemo.vcxproj index 0e90f7d9bb..798b64aeb6 100644 --- a/extras/Demo/Builds/VisualStudio2010/JuceDemo.vcxproj +++ b/extras/Demo/Builds/VisualStudio2010/JuceDemo.vcxproj @@ -1447,6 +1447,7 @@ + diff --git a/extras/Demo/Builds/VisualStudio2010/JuceDemo.vcxproj.filters b/extras/Demo/Builds/VisualStudio2010/JuceDemo.vcxproj.filters index 62f061137b..73391799c9 100644 --- a/extras/Demo/Builds/VisualStudio2010/JuceDemo.vcxproj.filters +++ b/extras/Demo/Builds/VisualStudio2010/JuceDemo.vcxproj.filters @@ -2163,6 +2163,9 @@ Juce Modules\juce_core\files + + Juce Modules\juce_core\files + Juce Modules\juce_core\files diff --git a/extras/Demo/Builds/VisualStudio2012/JuceDemo.vcxproj b/extras/Demo/Builds/VisualStudio2012/JuceDemo.vcxproj index e8b2649130..6090f96e50 100644 --- a/extras/Demo/Builds/VisualStudio2012/JuceDemo.vcxproj +++ b/extras/Demo/Builds/VisualStudio2012/JuceDemo.vcxproj @@ -1453,6 +1453,7 @@ + diff --git a/extras/Demo/Builds/VisualStudio2012/JuceDemo.vcxproj.filters b/extras/Demo/Builds/VisualStudio2012/JuceDemo.vcxproj.filters index 62f061137b..73391799c9 100644 --- a/extras/Demo/Builds/VisualStudio2012/JuceDemo.vcxproj.filters +++ b/extras/Demo/Builds/VisualStudio2012/JuceDemo.vcxproj.filters @@ -2163,6 +2163,9 @@ Juce Modules\juce_core\files + + Juce Modules\juce_core\files + Juce Modules\juce_core\files diff --git a/extras/Demo/Builds/VisualStudio2013/JuceDemo.vcxproj b/extras/Demo/Builds/VisualStudio2013/JuceDemo.vcxproj index dd33ce8efa..2d7cef856e 100644 --- a/extras/Demo/Builds/VisualStudio2013/JuceDemo.vcxproj +++ b/extras/Demo/Builds/VisualStudio2013/JuceDemo.vcxproj @@ -1453,6 +1453,7 @@ + diff --git a/extras/Demo/Builds/VisualStudio2013/JuceDemo.vcxproj.filters b/extras/Demo/Builds/VisualStudio2013/JuceDemo.vcxproj.filters index 5db11e4722..bfb18eb321 100644 --- a/extras/Demo/Builds/VisualStudio2013/JuceDemo.vcxproj.filters +++ b/extras/Demo/Builds/VisualStudio2013/JuceDemo.vcxproj.filters @@ -2163,6 +2163,9 @@ Juce Modules\juce_core\files + + Juce Modules\juce_core\files + Juce Modules\juce_core\files diff --git a/extras/Demo/Builds/iOS/JuceDemo.xcodeproj/project.pbxproj b/extras/Demo/Builds/iOS/JuceDemo.xcodeproj/project.pbxproj index 0c2d00c700..9ce21379c2 100644 --- a/extras/Demo/Builds/iOS/JuceDemo.xcodeproj/project.pbxproj +++ b/extras/Demo/Builds/iOS/JuceDemo.xcodeproj/project.pbxproj @@ -83,6 +83,7 @@ 01C6528C4A0646873D4C3429 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = AudioLatencyDemo.cpp; path = ../../Source/Demos/AudioLatencyDemo.cpp; sourceTree = "SOURCE_ROOT"; }; 01F2CB80C1B14450528F0FA8 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Identifier.cpp"; path = "../../../../modules/juce_core/text/juce_Identifier.cpp"; sourceTree = "SOURCE_ROOT"; }; 01F49D3FD943424005FB512F = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_android_FileChooser.cpp"; path = "../../../../modules/juce_gui_basics/native/juce_android_FileChooser.cpp"; sourceTree = "SOURCE_ROOT"; }; + 02628740749F0BD4C9193070 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_MountedVolumeListChangeDetector.h"; path = "../../../../modules/juce_core/files/juce_MountedVolumeListChangeDetector.h"; sourceTree = "SOURCE_ROOT"; }; 02659911BD886D2E8431B912 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LocalisedStrings.h"; path = "../../../../modules/juce_core/text/juce_LocalisedStrings.h"; sourceTree = "SOURCE_ROOT"; }; 02ABF8C447E1A47845F6027D = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_DrawableText.cpp"; path = "../../../../modules/juce_gui_basics/drawables/juce_DrawableText.cpp"; sourceTree = "SOURCE_ROOT"; }; 02F0BF69062E8D9583F13C83 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Drawable.cpp"; path = "../../../../modules/juce_gui_basics/drawables/juce_Drawable.cpp"; sourceTree = "SOURCE_ROOT"; }; @@ -1413,6 +1414,7 @@ A6EE2D5A258294BAC600F75B, 0F518E75055A9D954B52DAC4, 44879946DE89AF141BE428B6, + 02628740749F0BD4C9193070, 5D40332D94747C3190D4CC16, 2174CAEE6D8EB215ACD4A256, 4198EE3311A171C884A5FA9F, diff --git a/extras/Introjucer/Builds/CodeBlocks/The Introjucer.cbp b/extras/Introjucer/Builds/CodeBlocks/The Introjucer.cbp index f61cd6c21b..2522cc0d0c 100644 --- a/extras/Introjucer/Builds/CodeBlocks/The Introjucer.cbp +++ b/extras/Introjucer/Builds/CodeBlocks/The Introjucer.cbp @@ -1085,6 +1085,10 @@