From 65c155e37287fc18ea09b8d60920db3af605202f Mon Sep 17 00:00:00 2001 From: jules Date: Fri, 23 Aug 2013 12:08:31 +0100 Subject: [PATCH] Added a class ContainerDeletePolicy, to allow custom delete operations on objects held by ScopedPointers or OwnedArrays. Also cleaned away a lot of superfluous includes in juce_core files. --- .../Builds/CodeBlocks/The Introjucer.cbp | 8 +- .../The Introjucer.xcodeproj/project.pbxproj | 4 +- .../VisualStudio2005/The Introjucer.vcproj | 11 +- .../VisualStudio2008/The Introjucer.vcproj | 11 +- .../VisualStudio2010/The Introjucer.vcxproj | 4 +- .../The Introjucer.vcxproj.filters | 6 +- .../VisualStudio2012/The Introjucer.vcxproj | 4 +- .../The Introjucer.vcxproj.filters | 6 +- .../JuceDemo/Builds/CodeBlocks/Juce Demo.cbp | 8 +- .../Juce Demo.xcodeproj/project.pbxproj | 16 +- .../Builds/VisualStudio2005/Juce Demo.vcproj | 11 +- .../Builds/VisualStudio2008/Juce Demo.vcproj | 11 +- .../Builds/VisualStudio2010/Juce Demo.vcxproj | 4 +- .../Juce Demo.vcxproj.filters | 6 +- .../Builds/VisualStudio2012/Juce Demo.vcxproj | 4 +- .../Juce Demo.vcxproj.filters | 6 +- .../iOS/Juce Demo.xcodeproj/project.pbxproj | 8 +- .../JuceDemoPlugin.xcodeproj/project.pbxproj | 54 +++---- .../VisualStudio2005/JuceDemoPlugin.vcproj | 11 +- .../VisualStudio2008/JuceDemoPlugin.vcproj | 11 +- .../Plugin Host.xcodeproj/project.pbxproj | 10 +- .../VisualStudio2005/Plugin Host.vcproj | 11 +- .../VisualStudio2008/Plugin Host.vcproj | 11 +- .../BinaryBuilder.xcodeproj/project.pbxproj | 8 +- .../VisualStudio2008/BinaryBuilder.vcproj | 1 + .../HelloWorld.xcodeproj/project.pbxproj | 4 +- .../Builds/VisualStudio2005/HelloWorld.vcproj | 11 +- .../Builds/VisualStudio2008/HelloWorld.vcproj | 11 +- .../iOS/HelloWorld.xcodeproj/project.pbxproj | 4 +- .../audio_cd/juce_AudioCDBurner.h | 2 +- .../audio_io/juce_AudioDeviceManager.h | 2 +- .../format/juce_AudioFormatWriter.h | 2 +- .../scanning/juce_PluginListComponent.cpp | 4 +- .../scanning/juce_PluginListComponent.h | 2 +- .../gui/juce_AudioDeviceSelectorComponent.h | 2 +- .../gui/juce_AudioThumbnail.h | 6 +- .../gui/juce_AudioThumbnailCache.h | 2 +- modules/juce_core/containers/juce_Array.h | 4 - .../containers/juce_ArrayAllocationBase.h | 2 - .../juce_core/containers/juce_DynamicObject.h | 3 - modules/juce_core/containers/juce_HashMap.h | 4 - .../juce_core/containers/juce_NamedValueSet.h | 7 - .../juce_core/containers/juce_OwnedArray.h | 22 +-- .../juce_core/containers/juce_PropertySet.h | 4 - .../containers/juce_ReferenceCountedArray.h | 5 - modules/juce_core/containers/juce_SortedSet.h | 10 +- modules/juce_core/containers/juce_Variant.h | 9 -- .../juce_core/files/juce_DirectoryIterator.h | 9 +- modules/juce_core/files/juce_File.h | 9 -- .../juce_core/files/juce_FileInputStream.h | 3 - .../juce_core/files/juce_FileOutputStream.h | 3 - .../juce_core/files/juce_FileSearchPath.cpp | 11 +- modules/juce_core/files/juce_FileSearchPath.h | 16 +- .../juce_core/files/juce_MemoryMappedFile.h | 1 - modules/juce_core/files/juce_TemporaryFile.h | 2 - modules/juce_core/json/juce_JSON.h | 6 - modules/juce_core/juce_core.h | 137 +++++++++--------- modules/juce_core/logging/juce_FileLogger.h | 4 - modules/juce_core/logging/juce_Logger.h | 2 - modules/juce_core/maths/juce_BigInteger.h | 4 - modules/juce_core/maths/juce_Expression.h | 6 +- modules/juce_core/maths/juce_Random.h | 2 - .../memory/juce_ContainerDeletePolicy.h | 53 +++++++ .../memory/juce_LeakedObjectDetector.h | 3 - modules/juce_core/memory/juce_MemoryBlock.h | 3 - .../memory/juce_OptionalScopedPointer.h | 2 - modules/juce_core/memory/juce_ScopedPointer.h | 6 +- modules/juce_core/memory/juce_WeakReference.h | 2 - modules/juce_core/misc/juce_Result.h | 2 - modules/juce_core/misc/juce_Uuid.h | 2 - modules/juce_core/network/juce_MACAddress.h | 2 - modules/juce_core/network/juce_NamedPipe.h | 1 - modules/juce_core/network/juce_Socket.h | 2 - modules/juce_core/network/juce_URL.h | 5 - .../streams/juce_BufferedInputStream.h | 4 - .../juce_core/streams/juce_FileInputSource.h | 3 - modules/juce_core/streams/juce_InputSource.h | 1 - modules/juce_core/streams/juce_InputStream.h | 3 - .../streams/juce_MemoryInputStream.h | 3 - .../streams/juce_MemoryOutputStream.h | 4 - modules/juce_core/streams/juce_OutputStream.h | 6 - .../juce_core/streams/juce_SubregionStream.h | 3 - .../juce_core/system/juce_StandardHeader.h | 1 + modules/juce_core/system/juce_SystemStats.h | 2 - modules/juce_core/text/juce_Identifier.h | 2 - .../juce_core/text/juce_LocalisedStrings.h | 2 - modules/juce_core/text/juce_String.cpp | 62 ++++---- modules/juce_core/text/juce_StringArray.h | 3 - modules/juce_core/text/juce_StringPairArray.h | 2 - modules/juce_core/text/juce_StringPool.h | 3 - modules/juce_core/threads/juce_ChildProcess.h | 2 +- .../threads/juce_HighResolutionTimer.h | 2 +- .../juce_core/threads/juce_InterProcessLock.h | 7 +- modules/juce_core/threads/juce_Process.h | 2 - .../juce_core/threads/juce_ReadWriteLock.h | 6 - .../juce_core/threads/juce_ScopedReadLock.h | 2 - .../juce_core/threads/juce_ScopedWriteLock.h | 2 - modules/juce_core/threads/juce_SpinLock.h | 2 - modules/juce_core/threads/juce_Thread.h | 3 - modules/juce_core/threads/juce_ThreadPool.h | 8 +- .../juce_core/threads/juce_TimeSliceThread.h | 3 - .../juce_core/threads/juce_WaitableEvent.h | 2 - .../juce_core/time/juce_PerformanceCounter.h | 2 - modules/juce_core/time/juce_RelativeTime.h | 2 - modules/juce_core/time/juce_Time.h | 2 - modules/juce_core/unit_tests/juce_UnitTest.h | 2 - modules/juce_core/xml/juce_XmlDocument.h | 6 - modules/juce_core/xml/juce_XmlElement.h | 5 - .../zip/juce_GZIPCompressorOutputStream.h | 8 +- .../zip/juce_GZIPDecompressorInputStream.h | 8 +- modules/juce_core/zip/juce_ZipFile.h | 7 +- .../undomanager/juce_UndoManager.h | 2 +- .../juce_graphics/fonts/juce_CustomTypeface.h | 8 +- modules/juce_graphics/geometry/juce_Path.h | 2 - .../native/juce_RenderingHelpers.h | 4 +- .../application/juce_Application.h | 2 +- modules/juce_gui_basics/buttons/juce_Button.h | 4 +- .../components/juce_Component.h | 2 +- .../juce_gui_basics/components/juce_Desktop.h | 2 +- .../components/juce_ModalComponentManager.h | 4 +- .../layout/juce_ConcertinaPanel.h | 4 +- .../layout/juce_MultiDocumentPanel.cpp | 5 +- .../juce_gui_basics/layout/juce_ScrollBar.h | 4 +- .../layout/juce_TabbedButtonBar.h | 2 +- .../juce_gui_basics/menus/juce_PopupMenu.h | 8 +- modules/juce_gui_basics/widgets/juce_Slider.h | 2 +- .../juce_gui_basics/widgets/juce_TreeView.h | 6 +- .../windows/juce_DocumentWindow.h | 4 +- .../code_editor/juce_CodeEditorComponent.h | 4 +- .../embedding/juce_ActiveXControlComponent.h | 4 +- .../juce_gui_extra/misc/juce_ColourSelector.h | 4 +- .../misc/juce_KeyMappingEditorComponent.h | 4 +- .../opengl/juce_OpenGLFrameBuffer.h | 4 +- .../playback/juce_DirectShowComponent.h | 8 +- .../playback/juce_QuickTimeMovieComponent.h | 4 +- 135 files changed, 333 insertions(+), 616 deletions(-) create mode 100644 modules/juce_core/memory/juce_ContainerDeletePolicy.h diff --git a/extras/Introjucer/Builds/CodeBlocks/The Introjucer.cbp b/extras/Introjucer/Builds/CodeBlocks/The Introjucer.cbp index 4a05407d9a..956ebc11ef 100644 --- a/extras/Introjucer/Builds/CodeBlocks/The Introjucer.cbp +++ b/extras/Introjucer/Builds/CodeBlocks/The Introjucer.cbp @@ -776,6 +776,10 @@