Browse Source

More structural reorganisation.

tags/2021-05-28
Julian Storer 14 years ago
parent
commit
27d79bbf5b
29 changed files with 1305 additions and 1292 deletions
  1. +0
    -6
      Builds/Linux/Makefile
  2. +2
    -4
      Builds/MacOSX/Juce.xcodeproj/project.pbxproj
  3. +1
    -1
      Builds/VisualStudio2005/Juce.vcproj
  4. +1
    -1
      Builds/VisualStudio2008/Juce.vcproj
  5. +1
    -1
      Builds/VisualStudio2008_DLL/Juce.vcproj
  6. +1
    -1
      Builds/VisualStudio2010/Juce.vcxproj
  7. +3
    -3
      Builds/VisualStudio2010/Juce.vcxproj.filters
  8. +2
    -4
      Builds/iOS/Juce.xcodeproj/project.pbxproj
  9. +2
    -2
      Juce.jucer
  10. +0
    -1
      amalgamation/juce_amalgamated_template.cpp
  11. +1084
    -1064
      juce_amalgamated.cpp
  12. +20
    -16
      juce_amalgamated.h
  13. +4
    -4
      src/audio/audio_file_formats/juce_FlacAudioFormat.cpp
  14. +1
    -1
      src/audio/audio_file_formats/juce_OggVorbisAudioFormat.cpp
  15. +2
    -0
      src/audio/audio_file_formats/juce_QuickTimeAudioFormat.cpp
  16. +0
    -49
      src/audio/plugin_host/juce_AudioPluginInstance.cpp
  17. +3
    -3
      src/audio/plugin_host/juce_AudioPluginInstance.h
  18. +12
    -12
      src/audio/plugin_host/juce_PluginDescription.cpp
  19. +1
    -1
      src/core/juce_StandardHeader.h
  20. +2
    -0
      src/core/juce_TargetPlatform.h
  21. +11
    -13
      src/native/mac/juce_mac_CameraDevice.mm
  22. +11
    -0
      src/native/mac/juce_mac_CoreGraphicsContext.mm
  23. +2
    -0
      src/native/mac/juce_mac_NativeIncludes.h
  24. +6
    -1
      src/native/mac/juce_mac_ObjCSuffix.h
  25. +1
    -0
      src/native/windows/juce_win32_DirectSound.cpp
  26. +128
    -0
      src/native/windows/juce_win32_HiddenMessageWindow.h
  27. +1
    -101
      src/native/windows/juce_win32_Messaging.cpp
  28. +1
    -0
      src/native/windows/juce_win32_NativeCode.cpp
  29. +2
    -3
      src/native/windows/juce_win32_Network.cpp

+ 0
- 6
Builds/Linux/Makefile View File

@@ -83,7 +83,6 @@ OBJECTS := \
$(OBJDIR)/juce_VSTPluginFormat_af341d6.o \
$(OBJDIR)/juce_AudioPluginFormat_5dc1eec2.o \
$(OBJDIR)/juce_AudioPluginFormatManager_c336c715.o \
$(OBJDIR)/juce_AudioPluginInstance_96637ee0.o \
$(OBJDIR)/juce_KnownPluginList_cadece16.o \
$(OBJDIR)/juce_PluginDescription_d9c0f10b.o \
$(OBJDIR)/juce_PluginDirectoryScanner_c7652cec.o \
@@ -607,11 +606,6 @@ $(OBJDIR)/juce_AudioPluginFormatManager_c336c715.o: ../../src/audio/plugin_host/
@echo "Compiling juce_AudioPluginFormatManager.cpp"
@$(CXX) $(CXXFLAGS) -o "$@" -c "$<"
$(OBJDIR)/juce_AudioPluginInstance_96637ee0.o: ../../src/audio/plugin_host/juce_AudioPluginInstance.cpp
-@mkdir -p $(OBJDIR)
@echo "Compiling juce_AudioPluginInstance.cpp"
@$(CXX) $(CXXFLAGS) -o "$@" -c "$<"
$(OBJDIR)/juce_KnownPluginList_cadece16.o: ../../src/audio/plugin_host/juce_KnownPluginList.cpp
-@mkdir -p $(OBJDIR)
@echo "Compiling juce_KnownPluginList.cpp"


+ 2
- 4
Builds/MacOSX/Juce.xcodeproj/project.pbxproj View File

@@ -52,7 +52,6 @@
D71FEEEA440682B04E024BB7 = { isa = PBXBuildFile; fileRef = 2EBF36FAAF019B6F811D1C84; };
B331EE2C23176373F2D52C1E = { isa = PBXBuildFile; fileRef = 1C8211DFB558D740EF4B173A; };
79D8E372BA77018BDA956D92 = { isa = PBXBuildFile; fileRef = DA4820727D6DDC75561A262C; };
21005408DDA892A5B8B4F78D = { isa = PBXBuildFile; fileRef = C96D4FE222A8704A8F3BEDD8; };
3688819F98EFF0AABDD79029 = { isa = PBXBuildFile; fileRef = 3110B983ACE956D6A24F8C8C; };
84F9FCAE9DF003DC6FC3C941 = { isa = PBXBuildFile; fileRef = B6E20AE45813C0CA9B1014DD; };
E1046147432EB115A68D6C43 = { isa = PBXBuildFile; fileRef = AF47BC3796A74CC15A192E8B; };
@@ -483,7 +482,6 @@
28534632DF76A1EA837BD0D7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioPluginFormat.h"; path = "../../src/audio/plugin_host/juce_AudioPluginFormat.h"; sourceTree = "SOURCE_ROOT"; };
DA4820727D6DDC75561A262C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioPluginFormatManager.cpp"; path = "../../src/audio/plugin_host/juce_AudioPluginFormatManager.cpp"; sourceTree = "SOURCE_ROOT"; };
A6415104D1E3E5CE7031C0C1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioPluginFormatManager.h"; path = "../../src/audio/plugin_host/juce_AudioPluginFormatManager.h"; sourceTree = "SOURCE_ROOT"; };
C96D4FE222A8704A8F3BEDD8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioPluginInstance.cpp"; path = "../../src/audio/plugin_host/juce_AudioPluginInstance.cpp"; sourceTree = "SOURCE_ROOT"; };
E5BA7B8913271E935A1DA487 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioPluginInstance.h"; path = "../../src/audio/plugin_host/juce_AudioPluginInstance.h"; sourceTree = "SOURCE_ROOT"; };
3110B983ACE956D6A24F8C8C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_KnownPluginList.cpp"; path = "../../src/audio/plugin_host/juce_KnownPluginList.cpp"; sourceTree = "SOURCE_ROOT"; };
A3FE51C7DD706F536273AB0E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_KnownPluginList.h"; path = "../../src/audio/plugin_host/juce_KnownPluginList.h"; sourceTree = "SOURCE_ROOT"; };
@@ -1024,6 +1022,7 @@
DCD09B6EF4A4A109DE01F152 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_FileChooser.cpp"; path = "../../src/native/windows/juce_win32_FileChooser.cpp"; sourceTree = "SOURCE_ROOT"; };
7527A5E8F4F39581159D3E5B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Files.cpp"; path = "../../src/native/windows/juce_win32_Files.cpp"; sourceTree = "SOURCE_ROOT"; };
1DBF9DAAD0690CB2CA4E9960 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Fonts.cpp"; path = "../../src/native/windows/juce_win32_Fonts.cpp"; sourceTree = "SOURCE_ROOT"; };
E9B203E963EB1AB566061AC1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_win32_HiddenMessageWindow.h"; path = "../../src/native/windows/juce_win32_HiddenMessageWindow.h"; sourceTree = "SOURCE_ROOT"; };
BA561E64C6400CFB1DE013F6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Messaging.cpp"; path = "../../src/native/windows/juce_win32_Messaging.cpp"; sourceTree = "SOURCE_ROOT"; };
061B492EABD6B1C995D581A8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Midi.cpp"; path = "../../src/native/windows/juce_win32_Midi.cpp"; sourceTree = "SOURCE_ROOT"; };
519B519B76E2EEEAB49C62DF = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Misc.cpp"; path = "../../src/native/windows/juce_win32_Misc.cpp"; sourceTree = "SOURCE_ROOT"; };
@@ -1249,7 +1248,6 @@
28534632DF76A1EA837BD0D7,
DA4820727D6DDC75561A262C,
A6415104D1E3E5CE7031C0C1,
C96D4FE222A8704A8F3BEDD8,
E5BA7B8913271E935A1DA487,
3110B983ACE956D6A24F8C8C,
A3FE51C7DD706F536273AB0E,
@@ -1866,6 +1864,7 @@
DCD09B6EF4A4A109DE01F152,
7527A5E8F4F39581159D3E5B,
1DBF9DAAD0690CB2CA4E9960,
E9B203E963EB1AB566061AC1,
BA561E64C6400CFB1DE013F6,
061B492EABD6B1C995D581A8,
519B519B76E2EEEAB49C62DF,
@@ -2112,7 +2111,6 @@
D71FEEEA440682B04E024BB7,
B331EE2C23176373F2D52C1E,
79D8E372BA77018BDA956D92,
21005408DDA892A5B8B4F78D,
3688819F98EFF0AABDD79029,
84F9FCAE9DF003DC6FC3C941,
E1046147432EB115A68D6C43,


+ 1
- 1
Builds/VisualStudio2005/Juce.vcproj View File

@@ -305,7 +305,6 @@
<File RelativePath="..\..\src\audio\plugin_host\juce_AudioPluginFormat.h"/>
<File RelativePath="..\..\src\audio\plugin_host\juce_AudioPluginFormatManager.cpp"/>
<File RelativePath="..\..\src\audio\plugin_host\juce_AudioPluginFormatManager.h"/>
<File RelativePath="..\..\src\audio\plugin_host\juce_AudioPluginInstance.cpp"/>
<File RelativePath="..\..\src\audio\plugin_host\juce_AudioPluginInstance.h"/>
<File RelativePath="..\..\src\audio\plugin_host\juce_KnownPluginList.cpp"/>
<File RelativePath="..\..\src\audio\plugin_host\juce_KnownPluginList.h"/>
@@ -928,6 +927,7 @@
<File RelativePath="..\..\src\native\windows\juce_win32_FileChooser.cpp"/>
<File RelativePath="..\..\src\native\windows\juce_win32_Files.cpp"/>
<File RelativePath="..\..\src\native\windows\juce_win32_Fonts.cpp"/>
<File RelativePath="..\..\src\native\windows\juce_win32_HiddenMessageWindow.h"/>
<File RelativePath="..\..\src\native\windows\juce_win32_Messaging.cpp"/>
<File RelativePath="..\..\src\native\windows\juce_win32_Midi.cpp"/>
<File RelativePath="..\..\src\native\windows\juce_win32_Misc.cpp"/>


+ 1
- 1
Builds/VisualStudio2008/Juce.vcproj View File

@@ -305,7 +305,6 @@
<File RelativePath="..\..\src\audio\plugin_host\juce_AudioPluginFormat.h"/>
<File RelativePath="..\..\src\audio\plugin_host\juce_AudioPluginFormatManager.cpp"/>
<File RelativePath="..\..\src\audio\plugin_host\juce_AudioPluginFormatManager.h"/>
<File RelativePath="..\..\src\audio\plugin_host\juce_AudioPluginInstance.cpp"/>
<File RelativePath="..\..\src\audio\plugin_host\juce_AudioPluginInstance.h"/>
<File RelativePath="..\..\src\audio\plugin_host\juce_KnownPluginList.cpp"/>
<File RelativePath="..\..\src\audio\plugin_host\juce_KnownPluginList.h"/>
@@ -928,6 +927,7 @@
<File RelativePath="..\..\src\native\windows\juce_win32_FileChooser.cpp"/>
<File RelativePath="..\..\src\native\windows\juce_win32_Files.cpp"/>
<File RelativePath="..\..\src\native\windows\juce_win32_Fonts.cpp"/>
<File RelativePath="..\..\src\native\windows\juce_win32_HiddenMessageWindow.h"/>
<File RelativePath="..\..\src\native\windows\juce_win32_Messaging.cpp"/>
<File RelativePath="..\..\src\native\windows\juce_win32_Midi.cpp"/>
<File RelativePath="..\..\src\native\windows\juce_win32_Misc.cpp"/>


+ 1
- 1
Builds/VisualStudio2008_DLL/Juce.vcproj View File

@@ -307,7 +307,6 @@
<File RelativePath="..\..\src\audio\plugin_host\juce_AudioPluginFormat.h"/>
<File RelativePath="..\..\src\audio\plugin_host\juce_AudioPluginFormatManager.cpp"/>
<File RelativePath="..\..\src\audio\plugin_host\juce_AudioPluginFormatManager.h"/>
<File RelativePath="..\..\src\audio\plugin_host\juce_AudioPluginInstance.cpp"/>
<File RelativePath="..\..\src\audio\plugin_host\juce_AudioPluginInstance.h"/>
<File RelativePath="..\..\src\audio\plugin_host\juce_KnownPluginList.cpp"/>
<File RelativePath="..\..\src\audio\plugin_host\juce_KnownPluginList.h"/>
@@ -930,6 +929,7 @@
<File RelativePath="..\..\src\native\windows\juce_win32_FileChooser.cpp"/>
<File RelativePath="..\..\src\native\windows\juce_win32_Files.cpp"/>
<File RelativePath="..\..\src\native\windows\juce_win32_Fonts.cpp"/>
<File RelativePath="..\..\src\native\windows\juce_win32_HiddenMessageWindow.h"/>
<File RelativePath="..\..\src\native\windows\juce_win32_Messaging.cpp"/>
<File RelativePath="..\..\src\native\windows\juce_win32_Midi.cpp"/>
<File RelativePath="..\..\src\native\windows\juce_win32_Misc.cpp"/>


+ 1
- 1
Builds/VisualStudio2010/Juce.vcxproj View File

@@ -166,7 +166,6 @@
<ClCompile Include="..\..\src\audio\plugin_host\formats\juce_VSTPluginFormat.cpp"/>
<ClCompile Include="..\..\src\audio\plugin_host\juce_AudioPluginFormat.cpp"/>
<ClCompile Include="..\..\src\audio\plugin_host\juce_AudioPluginFormatManager.cpp"/>
<ClCompile Include="..\..\src\audio\plugin_host\juce_AudioPluginInstance.cpp"/>
<ClCompile Include="..\..\src\audio\plugin_host\juce_KnownPluginList.cpp"/>
<ClCompile Include="..\..\src\audio\plugin_host\juce_PluginDescription.cpp"/>
<ClCompile Include="..\..\src\audio\plugin_host\juce_PluginDirectoryScanner.cpp"/>
@@ -792,6 +791,7 @@
<ClInclude Include="..\..\src\native\mac\juce_osx_ObjCHelpers.h"/>
<ClInclude Include="..\..\src\native\windows\juce_win32_AutoLinkLibraries.h"/>
<ClInclude Include="..\..\src\native\windows\juce_win32_ComSmartPtr.h"/>
<ClInclude Include="..\..\src\native\windows\juce_win32_HiddenMessageWindow.h"/>
<ClInclude Include="..\..\src\native\windows\juce_win32_NativeIncludes.h"/>
<ClInclude Include="..\..\src\native\android\juce_android_NativeIncludes.h"/>
<ClInclude Include="..\..\src\text\juce_CharacterFunctions.h"/>


+ 3
- 3
Builds/VisualStudio2010/Juce.vcxproj.filters View File

@@ -355,9 +355,6 @@
<ClCompile Include="..\..\src\audio\plugin_host\juce_AudioPluginFormatManager.cpp">
<Filter>Juce\Source\audio\plugin_host</Filter>
</ClCompile>
<ClCompile Include="..\..\src\audio\plugin_host\juce_AudioPluginInstance.cpp">
<Filter>Juce\Source\audio\plugin_host</Filter>
</ClCompile>
<ClCompile Include="..\..\src\audio\plugin_host\juce_KnownPluginList.cpp">
<Filter>Juce\Source\audio\plugin_host</Filter>
</ClCompile>
@@ -2307,6 +2304,9 @@
<ClInclude Include="..\..\src\native\windows\juce_win32_ComSmartPtr.h">
<Filter>Juce\Source\native\windows</Filter>
</ClInclude>
<ClInclude Include="..\..\src\native\windows\juce_win32_HiddenMessageWindow.h">
<Filter>Juce\Source\native\windows</Filter>
</ClInclude>
<ClInclude Include="..\..\src\native\windows\juce_win32_NativeIncludes.h">
<Filter>Juce\Source\native\windows</Filter>
</ClInclude>


+ 2
- 4
Builds/iOS/Juce.xcodeproj/project.pbxproj View File

@@ -52,7 +52,6 @@
D71FEEEA440682B04E024BB7 = { isa = PBXBuildFile; fileRef = 2EBF36FAAF019B6F811D1C84; };
B331EE2C23176373F2D52C1E = { isa = PBXBuildFile; fileRef = 1C8211DFB558D740EF4B173A; };
79D8E372BA77018BDA956D92 = { isa = PBXBuildFile; fileRef = DA4820727D6DDC75561A262C; };
21005408DDA892A5B8B4F78D = { isa = PBXBuildFile; fileRef = C96D4FE222A8704A8F3BEDD8; };
3688819F98EFF0AABDD79029 = { isa = PBXBuildFile; fileRef = 3110B983ACE956D6A24F8C8C; };
84F9FCAE9DF003DC6FC3C941 = { isa = PBXBuildFile; fileRef = B6E20AE45813C0CA9B1014DD; };
E1046147432EB115A68D6C43 = { isa = PBXBuildFile; fileRef = AF47BC3796A74CC15A192E8B; };
@@ -483,7 +482,6 @@
28534632DF76A1EA837BD0D7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioPluginFormat.h"; path = "../../src/audio/plugin_host/juce_AudioPluginFormat.h"; sourceTree = "SOURCE_ROOT"; };
DA4820727D6DDC75561A262C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioPluginFormatManager.cpp"; path = "../../src/audio/plugin_host/juce_AudioPluginFormatManager.cpp"; sourceTree = "SOURCE_ROOT"; };
A6415104D1E3E5CE7031C0C1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioPluginFormatManager.h"; path = "../../src/audio/plugin_host/juce_AudioPluginFormatManager.h"; sourceTree = "SOURCE_ROOT"; };
C96D4FE222A8704A8F3BEDD8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_AudioPluginInstance.cpp"; path = "../../src/audio/plugin_host/juce_AudioPluginInstance.cpp"; sourceTree = "SOURCE_ROOT"; };
E5BA7B8913271E935A1DA487 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_AudioPluginInstance.h"; path = "../../src/audio/plugin_host/juce_AudioPluginInstance.h"; sourceTree = "SOURCE_ROOT"; };
3110B983ACE956D6A24F8C8C = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_KnownPluginList.cpp"; path = "../../src/audio/plugin_host/juce_KnownPluginList.cpp"; sourceTree = "SOURCE_ROOT"; };
A3FE51C7DD706F536273AB0E = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_KnownPluginList.h"; path = "../../src/audio/plugin_host/juce_KnownPluginList.h"; sourceTree = "SOURCE_ROOT"; };
@@ -1024,6 +1022,7 @@
DCD09B6EF4A4A109DE01F152 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_FileChooser.cpp"; path = "../../src/native/windows/juce_win32_FileChooser.cpp"; sourceTree = "SOURCE_ROOT"; };
7527A5E8F4F39581159D3E5B = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Files.cpp"; path = "../../src/native/windows/juce_win32_Files.cpp"; sourceTree = "SOURCE_ROOT"; };
1DBF9DAAD0690CB2CA4E9960 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Fonts.cpp"; path = "../../src/native/windows/juce_win32_Fonts.cpp"; sourceTree = "SOURCE_ROOT"; };
E9B203E963EB1AB566061AC1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_win32_HiddenMessageWindow.h"; path = "../../src/native/windows/juce_win32_HiddenMessageWindow.h"; sourceTree = "SOURCE_ROOT"; };
BA561E64C6400CFB1DE013F6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Messaging.cpp"; path = "../../src/native/windows/juce_win32_Messaging.cpp"; sourceTree = "SOURCE_ROOT"; };
061B492EABD6B1C995D581A8 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Midi.cpp"; path = "../../src/native/windows/juce_win32_Midi.cpp"; sourceTree = "SOURCE_ROOT"; };
519B519B76E2EEEAB49C62DF = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_win32_Misc.cpp"; path = "../../src/native/windows/juce_win32_Misc.cpp"; sourceTree = "SOURCE_ROOT"; };
@@ -1249,7 +1248,6 @@
28534632DF76A1EA837BD0D7,
DA4820727D6DDC75561A262C,
A6415104D1E3E5CE7031C0C1,
C96D4FE222A8704A8F3BEDD8,
E5BA7B8913271E935A1DA487,
3110B983ACE956D6A24F8C8C,
A3FE51C7DD706F536273AB0E,
@@ -1866,6 +1864,7 @@
DCD09B6EF4A4A109DE01F152,
7527A5E8F4F39581159D3E5B,
1DBF9DAAD0690CB2CA4E9960,
E9B203E963EB1AB566061AC1,
BA561E64C6400CFB1DE013F6,
061B492EABD6B1C995D581A8,
519B519B76E2EEEAB49C62DF,
@@ -2116,7 +2115,6 @@
D71FEEEA440682B04E024BB7,
B331EE2C23176373F2D52C1E,
79D8E372BA77018BDA956D92,
21005408DDA892A5B8B4F78D,
3688819F98EFF0AABDD79029,
84F9FCAE9DF003DC6FC3C941,
E1046147432EB115A68D6C43,


+ 2
- 2
Juce.jucer View File

@@ -294,8 +294,6 @@
resource="0" file="src/audio/plugin_host/juce_AudioPluginFormatManager.cpp"/>
<FILE id="B5LxiQ" name="juce_AudioPluginFormatManager.h" compile="0"
resource="0" file="src/audio/plugin_host/juce_AudioPluginFormatManager.h"/>
<FILE id="VKCA5h" name="juce_AudioPluginInstance.cpp" compile="1" resource="0"
file="src/audio/plugin_host/juce_AudioPluginInstance.cpp"/>
<FILE id="eUQAKu" name="juce_AudioPluginInstance.h" compile="0" resource="0"
file="src/audio/plugin_host/juce_AudioPluginInstance.h"/>
<FILE id="Wvtvb" name="juce_KnownPluginList.cpp" compile="1" resource="0"
@@ -1434,6 +1432,8 @@
file="src/native/windows/juce_win32_Files.cpp"/>
<FILE id="qEVAjzrrR" name="juce_win32_Fonts.cpp" compile="1" resource="0"
file="src/native/windows/juce_win32_Fonts.cpp"/>
<FILE id="EnTTYs" name="juce_win32_HiddenMessageWindow.h" compile="0"
resource="0" file="src/native/windows/juce_win32_HiddenMessageWindow.h"/>
<FILE id="Nqhr3WLUE" name="juce_win32_Messaging.cpp" compile="1" resource="0"
file="src/native/windows/juce_win32_Messaging.cpp"/>
<FILE id="P25j5MUtL" name="juce_win32_Midi.cpp" compile="1" resource="0"


+ 0
- 1
amalgamation/juce_amalgamated_template.cpp View File

@@ -207,7 +207,6 @@
#include "../src/audio/midi/juce_MidiMessageSequence.cpp"
#include "../src/audio/plugin_host/juce_AudioPluginFormat.cpp"
#include "../src/audio/plugin_host/juce_AudioPluginFormatManager.cpp"
#include "../src/audio/plugin_host/juce_AudioPluginInstance.cpp"
#include "../src/audio/plugin_host/juce_KnownPluginList.cpp"
#include "../src/audio/plugin_host/juce_PluginDescription.cpp"
#include "../src/audio/plugin_host/juce_PluginDirectoryScanner.cpp"


+ 1084
- 1064
juce_amalgamated.cpp
File diff suppressed because it is too large
View File


+ 20
- 16
juce_amalgamated.h View File

@@ -73,7 +73,7 @@ namespace JuceDummyNamespace {}
*/
#define JUCE_MAJOR_VERSION 1
#define JUCE_MINOR_VERSION 54
#define JUCE_BUILDNUMBER 13
#define JUCE_BUILDNUMBER 14

/** Current Juce version number.

@@ -102,6 +102,14 @@ namespace JuceDummyNamespace {}
- Either JUCE_GCC or JUCE_MSVC
*/

/* This line is here as a sanity-check to catch syntax errors caused by mistakes in 3rd-party
header files that have been included before this one. If you hit an error at this line, there
must be some kind of syntax problem in whatever code immediately precedes this header.

It also causes an error if you attempt to build using a C or obj-C compiler rather than a C++ one.
*/
namespace JuceDummyNamespace {}

#if (defined (_WIN32) || defined (_WIN64))
#define JUCE_WIN32 1
#define JUCE_WINDOWS 1
@@ -111,7 +119,9 @@ namespace JuceDummyNamespace {}
#elif defined (LINUX) || defined (__linux__)
#define JUCE_LINUX 1
#elif defined (__APPLE_CPP__) || defined(__APPLE_CC__)
#define Point CarbonDummyPointName // (workaround to avoid definition of "Point" by old Carbon headers)
#include <CoreFoundation/CoreFoundation.h> // (needed to find out what platform we're using)
#undef Point

#if TARGET_OS_IPHONE || TARGET_IPHONE_SIMULATOR
#define JUCE_IPHONE 1
@@ -848,10 +858,6 @@ namespace JuceDummyNamespace {}
#if JUCE_MSVC
#include <malloc.h>
#pragma warning (pop)

#if ! JUCE_PUBLIC_INCLUDES
#pragma warning (4: 4511 4512 4100) // (enable some warnings that are turned off in VC8)
#endif
#endif

#if JUCE_ANDROID
@@ -25129,9 +25135,9 @@ public:
#define __JUCE_IMAGEEFFECTFILTER_JUCEHEADER__


/*** Start of inlined file: juce_Graphics.h ***/
#ifndef __JUCE_GRAPHICS_JUCEHEADER__
#define __JUCE_GRAPHICS_JUCEHEADER__
/*** Start of inlined file: juce_GraphicsContext.h ***/
#ifndef __JUCE_GRAPHICSCONTEXT_JUCEHEADER__
#define __JUCE_GRAPHICSCONTEXT_JUCEHEADER__


/*** Start of inlined file: juce_Font.h ***/
@@ -29627,9 +29633,9 @@ private:
JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (Graphics);
};

#endif // __JUCE_GRAPHICS_JUCEHEADER__
#endif // __JUCE_GRAPHICSCONTEXT_JUCEHEADER__

/*** End of inlined file: juce_Graphics.h ***/
/*** End of inlined file: juce_GraphicsContext.h ***/

/**
A graphical effect filter that can be applied to components.
@@ -43362,7 +43368,7 @@ public:
Make sure that you delete any UI components that belong to this plugin before
deleting the plugin.
*/
virtual ~AudioPluginInstance();
virtual ~AudioPluginInstance() {}

/** Fills-in the appropriate parts of this plugin description object.
*/
@@ -43373,11 +43379,11 @@ public:
E.g. For a VST, this value can be cast to an AEffect*. For an AudioUnit, it can be
cast to an AudioUnit handle.
*/
virtual void* getPlatformSpecificData();
virtual void* getPlatformSpecificData() { return nullptr; }

protected:

AudioPluginInstance();
AudioPluginInstance() {}

JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (AudioPluginInstance);
};
@@ -43582,7 +43588,6 @@ private:


#endif
#ifndef __JUCE_VSTMIDIEVENTLIST_JUCEHEADER__

/*** Start of inlined file: juce_VSTMidiEventList.h ***/
#ifdef __aeffect__
@@ -43747,7 +43752,6 @@ private:
/*** End of inlined file: juce_VSTMidiEventList.h ***/


#endif
#ifndef __JUCE_VSTPLUGINFORMAT_JUCEHEADER__

/*** Start of inlined file: juce_VSTPluginFormat.h ***/
@@ -67170,7 +67174,7 @@ private:


#endif
#ifndef __JUCE_GRAPHICS_JUCEHEADER__
#ifndef __JUCE_GRAPHICSCONTEXT_JUCEHEADER__

#endif
#ifndef __JUCE_JUSTIFICATION_JUCEHEADER__


+ 4
- 4
src/audio/audio_file_formats/juce_FlacAudioFormat.cpp View File

@@ -38,14 +38,14 @@ BEGIN_JUCE_NAMESPACE
namespace FlacNamespace
{
#if JUCE_INCLUDE_FLAC_CODE
#if JUCE_INCLUDE_FLAC_CODE || ! defined (JUCE_INCLUDE_FLAC_CODE)
#if JUCE_MSVC
#pragma warning (disable: 4505 181 111)
#endif
#pragma warning (disable: 4505 181 111)
#endif
#define FLAC__NO_DLL 1
#if ! defined (SIZE_MAX)
#ifndef SIZE_MAX
#define SIZE_MAX 0xffffffff
#endif


+ 1
- 1
src/audio/audio_file_formats/juce_OggVorbisAudioFormat.cpp View File

@@ -38,7 +38,7 @@ BEGIN_JUCE_NAMESPACE
namespace OggVorbisNamespace
{
#if JUCE_INCLUDE_OGGVORBIS_CODE
#if JUCE_INCLUDE_OGGVORBIS_CODE || ! defined (JUCE_INCLUDE_OGGVORBIS_CODE)
#include "oggvorbis/vorbisenc.h"
#include "oggvorbis/codec.h"
#include "oggvorbis/vorbisfile.h"


+ 2
- 0
src/audio/audio_file_formats/juce_QuickTimeAudioFormat.cpp View File

@@ -46,11 +46,13 @@
Alternatively, if you don't need any QuickTime services, just turn off the JUCE_QUICKTIME
flag in juce_Config.h
*/
#undef SIZE_MAX
#include <Movies.h>
#include <QTML.h>
#include <QuickTimeComponents.h>
#include <MediaHandlers.h>
#include <ImageCodec.h>
#undef SIZE_MAX
#if JUCE_MSVC
#pragma warning (pop)


+ 0
- 49
src/audio/plugin_host/juce_AudioPluginInstance.cpp View File

@@ -1,49 +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.
==============================================================================
*/
#define JUCE_PLUGIN_HOST 1
#include "../../core/juce_StandardHeader.h"
BEGIN_JUCE_NAMESPACE
#include "juce_AudioPluginInstance.h"
//==============================================================================
AudioPluginInstance::AudioPluginInstance()
{
}
AudioPluginInstance::~AudioPluginInstance()
{
}
void* AudioPluginInstance::getPlatformSpecificData()
{
return nullptr;
}
END_JUCE_NAMESPACE

+ 3
- 3
src/audio/plugin_host/juce_AudioPluginInstance.h View File

@@ -48,7 +48,7 @@ public:
Make sure that you delete any UI components that belong to this plugin before
deleting the plugin.
*/
virtual ~AudioPluginInstance();
virtual ~AudioPluginInstance() {}
//==============================================================================
/** Fills-in the appropriate parts of this plugin description object.
@@ -60,11 +60,11 @@ public:
E.g. For a VST, this value can be cast to an AEffect*. For an AudioUnit, it can be
cast to an AudioUnit handle.
*/
virtual void* getPlatformSpecificData();
virtual void* getPlatformSpecificData() { return nullptr; }
protected:
//==============================================================================
AudioPluginInstance();
AudioPluginInstance() {}
JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (AudioPluginInstance);
};


+ 12
- 12
src/audio/plugin_host/juce_PluginDescription.cpp View File

@@ -117,18 +117,18 @@ bool PluginDescription::loadFromXml (const XmlElement& xml)
{
if (xml.hasTagName ("PLUGIN"))
{
name = xml.getStringAttribute ("name");
descriptiveName = xml.getStringAttribute ("name", name);
pluginFormatName = xml.getStringAttribute ("format");
category = xml.getStringAttribute ("category");
manufacturerName = xml.getStringAttribute ("manufacturer");
version = xml.getStringAttribute ("version");
fileOrIdentifier = xml.getStringAttribute ("file");
uid = xml.getStringAttribute ("uid").getHexValue32();
isInstrument = xml.getBoolAttribute ("isInstrument", false);
lastFileModTime = Time (xml.getStringAttribute ("fileTime").getHexValue64());
numInputChannels = xml.getIntAttribute ("numInputs");
numOutputChannels = xml.getIntAttribute ("numOutputs");
name = xml.getStringAttribute ("name");
descriptiveName = xml.getStringAttribute ("descriptiveName", name);
pluginFormatName = xml.getStringAttribute ("format");
category = xml.getStringAttribute ("category");
manufacturerName = xml.getStringAttribute ("manufacturer");
version = xml.getStringAttribute ("version");
fileOrIdentifier = xml.getStringAttribute ("file");
uid = xml.getStringAttribute ("uid").getHexValue32();
isInstrument = xml.getBoolAttribute ("isInstrument", false);
lastFileModTime = Time (xml.getStringAttribute ("fileTime").getHexValue64());
numInputChannels = xml.getIntAttribute ("numInputs");
numOutputChannels = xml.getIntAttribute ("numOutputs");
return true;
}


+ 1
- 1
src/core/juce_StandardHeader.h View File

@@ -33,7 +33,7 @@
*/
#define JUCE_MAJOR_VERSION 1
#define JUCE_MINOR_VERSION 54
#define JUCE_BUILDNUMBER 13
#define JUCE_BUILDNUMBER 14
/** Current Juce version number.


+ 2
- 0
src/core/juce_TargetPlatform.h View File

@@ -58,7 +58,9 @@ namespace JuceDummyNamespace {}
#elif defined (LINUX) || defined (__linux__)
#define JUCE_LINUX 1
#elif defined (__APPLE_CPP__) || defined(__APPLE_CC__)
#define Point CarbonDummyPointName // (workaround to avoid definition of "Point" by old Carbon headers)
#include <CoreFoundation/CoreFoundation.h> // (needed to find out what platform we're using)
#undef Point
#if TARGET_OS_IPHONE || TARGET_IPHONE_SIMULATOR
#define JUCE_IPHONE 1


+ 11
- 13
src/native/mac/juce_mac_CameraDevice.mm View File

@@ -62,11 +62,19 @@ END_JUCE_NAMESPACE
BEGIN_JUCE_NAMESPACE
extern Image juce_createImageFromCIImage (CIImage* im, int w, int h);
//==============================================================================
class QTCameraDeviceInteral
{
public:
QTCameraDeviceInteral (CameraDevice* owner, int index)
QTCameraDeviceInteral (CameraDevice* owner, const int index)
: input (nil),
audioDevice (nil),
audioInput (nil),
session (nil),
fileOutput (nil),
imageOutput (nil)
{
JUCE_AUTORELEASEPOOL
@@ -74,11 +82,6 @@ public:
NSArray* devs = [QTCaptureDevice inputDevicesWithMediaType: QTMediaTypeVideo];
device = (QTCaptureDevice*) [devs objectAtIndex: index];
input = nil;
audioInput = nil;
audioDevice = nil;
fileOutput = nil;
imageOutput = nil;
callbackDelegate = [[QTCaptureCallbackDelegate alloc] initWithOwner: owner
internalDev: this];
@@ -88,7 +91,7 @@ public:
if (err == nil)
{
input = [[QTCaptureDeviceInput alloc] initWithDevice: device];
input = [[QTCaptureDeviceInput alloc] initWithDevice: device];
audioInput = [[QTCaptureDeviceInput alloc] initWithDevice: device];
[session addInput: input error: &err];
@@ -181,12 +184,7 @@ public:
void callListeners (CIImage* frame, int w, int h)
{
CoreGraphicsImage* cgImage = new CoreGraphicsImage (Image::ARGB, w, h, false);
Image image (cgImage);
CIContext* cic = [CIContext contextWithCGContext: cgImage->context options: nil];
[cic drawImage: frame inRect: CGRectMake (0, 0, w, h) fromRect: CGRectMake (0, 0, w, h)];
CGContextFlush (cgImage->context);
Image image (juce_createImageFromCIImage (frame, w, h));
const ScopedLock sl (listenerLock);


+ 11
- 0
src/native/mac/juce_mac_CoreGraphicsContext.mm View File

@@ -922,4 +922,15 @@ Image juce_loadWithCoreImage (InputStream& input)
}
#endif
Image juce_createImageFromCIImage (CIImage* im, int w, int h)
{
CoreGraphicsImage* cgImage = new CoreGraphicsImage (Image::ARGB, w, h, false);
CIContext* cic = [CIContext contextWithCGContext: cgImage->context options: nil];
[cic drawImage: im inRect: CGRectMake (0, 0, w, h) fromRect: CGRectMake (0, 0, w, h)];
CGContextFlush (cgImage->context);
return Image (cgImage);
}
#endif

+ 2
- 0
src/native/mac/juce_mac_NativeIncludes.h View File

@@ -43,6 +43,7 @@
#include <OpenGLES/ES1/glext.h>
#endif
#else
#define Point CarbonDummyPointName // (workaround to avoid definition of "Point" by old Carbon headers)
#import <Cocoa/Cocoa.h>
#import <CoreAudio/HostTime.h>
#if JUCE_BUILD_NATIVE
@@ -61,6 +62,7 @@
|| ! (defined (MAC_OS_X_VERSION_10_6) && MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_6)
#include <Carbon/Carbon.h>
#endif
#undef Point
#include <sys/dir.h>
#endif


+ 6
- 1
src/native/mac/juce_mac_ObjCSuffix.h View File

@@ -23,6 +23,9 @@
==============================================================================
*/
#ifndef __JUCE_MAC_OBJCSUFFIX_JUCEHEADER__
#define __JUCE_MAC_OBJCSUFFIX_JUCEHEADER__
/** This suffix is used for naming all Obj-C classes that are used inside juce.
Because of the flat naming structure used by Obj-C, you can get horrible situations where
@@ -43,5 +46,7 @@
#ifndef DOXYGEN
#define appendMacro1(a, b, c, d, e) a ## _ ## b ## _ ## c ## _ ## d ## _ ## e
#define appendMacro2(a, b, c, d, e) appendMacro1(a, b, c, d, e)
#define MakeObjCClassName(rootName) appendMacro2 (rootName, JUCE_MAJOR_VERSION, JUCE_MINOR_VERSION, JUCE_BUILDNUMBER, JUCE_ObjCExtraSuffix)
#define MakeObjCClassName(rootName) appendMacro2 (rootName, JUCE_MAJOR_VERSION, JUCE_MINOR_VERSION, JUCE_BUILDNUMBER, JUCE_ObjCExtraSuffix)
#endif
#endif // __JUCE_MAC_OBJCSUFFIX_JUCEHEADER__

+ 1
- 0
src/native/windows/juce_win32_DirectSound.cpp View File

@@ -1377,5 +1377,6 @@ AudioIODeviceType* AudioIODeviceType::createAudioIODeviceType_DirectSound()
}
#undef log
#undef logError
#endif

+ 128
- 0
src/native/windows/juce_win32_HiddenMessageWindow.h View File

@@ -0,0 +1,128 @@
/*
==============================================================================
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 __JUCE_WIN32_HIDDENMESSAGEWINDOW_JUCEHEADER__
#define __JUCE_WIN32_HIDDENMESSAGEWINDOW_JUCEHEADER__
//==============================================================================
class HiddenMessageWindow
{
public:
HiddenMessageWindow (const TCHAR* const messageWindowName, WNDPROC wndProc)
{
String className ("JUCE_");
className << String::toHexString (Time::getHighResolutionTicks());
HMODULE moduleHandle = (HMODULE) Process::getCurrentModuleInstanceHandle();
WNDCLASSEX wc = { 0 };
wc.cbSize = sizeof (wc);
wc.lpfnWndProc = wndProc;
wc.cbWndExtra = 4;
wc.hInstance = moduleHandle;
wc.lpszClassName = className.toWideCharPointer();
atom = RegisterClassEx (&wc);
jassert (atom != 0);
hwnd = CreateWindow (getClassNameFromAtom(), messageWindowName,
0, 0, 0, 0, 0, 0, 0, moduleHandle, 0);
jassert (hwnd != 0);
}
~HiddenMessageWindow()
{
DestroyWindow (hwnd);
UnregisterClass (getClassNameFromAtom(), 0);
}
inline HWND getHWND() const noexcept { return hwnd; }
private:
ATOM atom;
HWND hwnd;
LPCTSTR getClassNameFromAtom() noexcept { return (LPCTSTR) MAKELONG (atom, 0); }
};
//==============================================================================
class JuceWindowIdentifier
{
public:
static bool isJUCEWindow (HWND hwnd) noexcept
{
return GetWindowLong (hwnd, GWLP_USERDATA) == improbableWindowNumber;
}
static void setAsJUCEWindow (HWND hwnd, bool isJuceWindow) noexcept
{
SetWindowLongPtr (hwnd, GWLP_USERDATA, isJuceWindow ? improbableWindowNumber : 0);
}
private:
enum { improbableWindowNumber = 0xf965aa01 };
};
//==============================================================================
class DeviceChangeDetector : private Timer
{
public:
DeviceChangeDetector (const wchar_t* const name)
: messageWindow (name, (WNDPROC) deviceChangeEventCallback)
{
SetWindowLongPtr (messageWindow.getHWND(), GWLP_USERDATA, (LONG_PTR) this);
}
virtual ~DeviceChangeDetector() {}
protected:
virtual void systemDeviceChanged() = 0;
private:
HiddenMessageWindow messageWindow;
static LRESULT CALLBACK deviceChangeEventCallback (HWND h, const UINT message,
const WPARAM wParam, const LPARAM lParam)
{
if (message == WM_DEVICECHANGE
&& (wParam == 0x8000 /*DBT_DEVICEARRIVAL*/
|| wParam == 0x8004 /*DBT_DEVICEREMOVECOMPLETE*/
|| wParam == 0x0007 /*DBT_DEVNODES_CHANGED*/))
{
// We'll pause before sending a message, because on device removal, the OS hasn't always updated
// its device lists correctly at this point. This also helps avoid repeated callbacks.
((DeviceChangeDetector*) GetWindowLongPtr (h, GWLP_USERDATA))->startTimer (500);
}
return DefWindowProc (h, message, wParam, lParam);
}
void timerCallback()
{
systemDeviceChanged();
}
};
#endif // __JUCE_WIN32_HIDDENMESSAGEWINDOW_JUCEHEADER__

+ 1
- 101
src/native/windows/juce_win32_Messaging.cpp View File

@@ -27,67 +27,7 @@
// compiled on its own).
#if JUCE_INCLUDED_FILE
//==============================================================================
class HiddenMessageWindow
{
public:
HiddenMessageWindow (const TCHAR* const messageWindowName, WNDPROC wndProc)
{
String className ("JUCE_");
className << String::toHexString (Time::getHighResolutionTicks());
HMODULE moduleHandle = (HMODULE) Process::getCurrentModuleInstanceHandle();
WNDCLASSEX wc = { 0 };
wc.cbSize = sizeof (wc);
wc.lpfnWndProc = wndProc;
wc.cbWndExtra = 4;
wc.hInstance = moduleHandle;
wc.lpszClassName = className.toWideCharPointer();
atom = RegisterClassEx (&wc);
jassert (atom != 0);
hwnd = CreateWindow (getClassNameFromAtom(), messageWindowName,
0, 0, 0, 0, 0, 0, 0, moduleHandle, 0);
jassert (hwnd != 0);
}
~HiddenMessageWindow()
{
DestroyWindow (hwnd);
UnregisterClass (getClassNameFromAtom(), 0);
}
inline HWND getHWND() const noexcept { return hwnd; }
private:
ATOM atom;
HWND hwnd;
LPCTSTR getClassNameFromAtom() noexcept { return (LPCTSTR) MAKELONG (atom, 0); }
};
//==============================================================================
class JuceWindowIdentifier
{
public:
static bool isJUCEWindow (HWND hwnd) noexcept
{
return GetWindowLong (hwnd, GWLP_USERDATA) == improbableWindowNumber;
}
static void setAsJUCEWindow (HWND hwnd, bool isJuceWindow) noexcept
{
SetWindowLongPtr (hwnd, GWLP_USERDATA, isJuceWindow ? improbableWindowNumber : 0);
}
private:
enum { improbableWindowNumber = 0xf965aa01 };
};
extern HWND juce_messageWindowHandle;
//==============================================================================
namespace WindowsMessageHelpers
@@ -341,44 +281,4 @@ void MessageManager::doPlatformSpecificShutdown()
OleUninitialize();
}
//==============================================================================
class DeviceChangeDetector : private Timer // (Used by various audio classes)
{
public:
DeviceChangeDetector (const wchar_t* const name)
: messageWindow (name, (WNDPROC) deviceChangeEventCallback)
{
SetWindowLongPtr (messageWindow.getHWND(), GWLP_USERDATA, (LONG_PTR) this);
}
virtual ~DeviceChangeDetector() {}
protected:
virtual void systemDeviceChanged() = 0;
private:
HiddenMessageWindow messageWindow;
static LRESULT CALLBACK deviceChangeEventCallback (HWND h, const UINT message,
const WPARAM wParam, const LPARAM lParam)
{
if (message == WM_DEVICECHANGE
&& (wParam == 0x8000 /*DBT_DEVICEARRIVAL*/
|| wParam == 0x8004 /*DBT_DEVICEREMOVECOMPLETE*/
|| wParam == 0x0007 /*DBT_DEVNODES_CHANGED*/))
{
// We'll pause before sending a message, because on device removal, the OS hasn't always updated
// its device lists correctly at this point. This also helps avoid repeated callbacks.
((DeviceChangeDetector*) GetWindowLongPtr (h, GWLP_USERDATA))->startTimer (500);
}
return DefWindowProc (h, message, wParam, lParam);
}
void timerCallback()
{
systemDeviceChanged();
}
};
#endif

+ 1
- 0
src/native/windows/juce_win32_NativeCode.cpp View File

@@ -106,6 +106,7 @@ BEGIN_JUCE_NAMESPACE
#include "juce_win32_Registry.cpp"
#if ! JUCE_ONLY_BUILD_CORE_LIBRARY
#include "juce_win32_HiddenMessageWindow.h"
#include "juce_win32_Messaging.cpp"
#include "juce_win32_Fonts.cpp"
#include "juce_win32_Direct2DGraphicsContext.cpp"


+ 2
- 3
src/native/windows/juce_win32_Network.cpp View File

@@ -291,12 +291,11 @@ private:
request = FtpOpenFile (connection, uc.lpszUrlPath, GENERIC_READ,
FTP_TRANSFER_TYPE_BINARY | INTERNET_FLAG_NEED_FILE, 0);
else
openHTTPConnection (uc, sessionHandle, progressCallback, progressCallbackContext);
openHTTPConnection (uc, progressCallback, progressCallbackContext);
}
}
void openHTTPConnection (URL_COMPONENTS& uc, HINTERNET sessionHandle,
URL::OpenStreamProgressCallback* progressCallback,
void openHTTPConnection (URL_COMPONENTS& uc, URL::OpenStreamProgressCallback* progressCallback,
void* progressCallbackContext)
{
const TCHAR* mimeTypes[] = { _T("*/*"), 0 };


Loading…
Cancel
Save