The JUCE cross-platform C++ framework, with DISTRHO/KXStudio specific changes
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

139 lines
6.0KB

  1. /*
  2. ==============================================================================
  3. This file is part of the JUCE library - "Jules' Utility Class Extensions"
  4. Copyright 2004-11 by Raw Material Software Ltd.
  5. ------------------------------------------------------------------------------
  6. JUCE can be redistributed and/or modified under the terms of the GNU General
  7. Public License (Version 2), as published by the Free Software Foundation.
  8. A copy of the license is included in the JUCE distribution, or can be found
  9. online at www.gnu.org/licenses.
  10. JUCE is distributed in the hope that it will be useful, but WITHOUT ANY
  11. WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
  12. A PARTICULAR PURPOSE. See the GNU General Public License for more details.
  13. ------------------------------------------------------------------------------
  14. To release a closed-source product which uses JUCE, commercial licenses are
  15. available: visit www.rawmaterialsoftware.com/juce for more information.
  16. ==============================================================================
  17. */
  18. /*
  19. This file wraps together all the win32-specific code, so that
  20. we can include all the native headers just once, and compile all our
  21. platform-specific stuff in one big lump, keeping it out of the way of
  22. the rest of the codebase.
  23. */
  24. #include "../../core/juce_TargetPlatform.h"
  25. #if JUCE_WINDOWS
  26. #undef JUCE_BUILD_NATIVE
  27. #define JUCE_BUILD_NATIVE 1
  28. #include "juce_win32_NativeIncludes.h"
  29. #include "../../core/juce_StandardHeader.h"
  30. BEGIN_JUCE_NAMESPACE
  31. //==============================================================================
  32. #include "../../core/juce_Singleton.h"
  33. #include "../../maths/juce_Random.h"
  34. #include "../../core/juce_SystemStats.h"
  35. #include "../../threads/juce_Process.h"
  36. #include "../../threads/juce_Thread.h"
  37. #include "../../threads/juce_InterProcessLock.h"
  38. #include "../../threads/juce_DynamicLibrary.h"
  39. #include "../../io/files/juce_FileInputStream.h"
  40. #include "../../io/files/juce_FileOutputStream.h"
  41. #include "../../io/streams/juce_MemoryOutputStream.h"
  42. #include "../../io/files/juce_NamedPipe.h"
  43. #include "../../io/files/juce_DirectoryIterator.h"
  44. #include "../../io/files/juce_MemoryMappedFile.h"
  45. #include "../../io/network/juce_URL.h"
  46. #include "../../io/network/juce_MACAddress.h"
  47. #include "../../text/juce_LocalisedStrings.h"
  48. #include "../../utilities/juce_DeletedAtShutdown.h"
  49. #include "../../application/juce_Application.h"
  50. #include "../../utilities/juce_SystemClipboard.h"
  51. #include "../../events/juce_MessageManager.h"
  52. #include "../../gui/graphics/contexts/juce_LowLevelGraphicsSoftwareRenderer.h"
  53. #include "../../gui/graphics/imaging/juce_ImageFileFormat.h"
  54. #include "../../gui/graphics/imaging/juce_CameraDevice.h"
  55. #include "../../gui/graphics/fonts/juce_CustomTypeface.h"
  56. #include "../../gui/components/windows/juce_ComponentPeer.h"
  57. #include "../../gui/components/windows/juce_AlertWindow.h"
  58. #include "../../gui/components/windows/juce_NativeMessageBox.h"
  59. #include "../../gui/components/juce_Desktop.h"
  60. #include "../../gui/components/menus/juce_MenuBarModel.h"
  61. #include "../../gui/components/special/juce_OpenGLComponent.h"
  62. #include "../../gui/components/special/juce_QuickTimeMovieComponent.h"
  63. #include "../../gui/components/special/juce_DirectShowComponent.h"
  64. #include "../../gui/components/mouse/juce_DragAndDropContainer.h"
  65. #include "../../gui/components/mouse/juce_MouseInputSource.h"
  66. #include "../../gui/components/keyboard/juce_KeyPressMappingSet.h"
  67. #include "../../gui/components/layout/juce_ComponentMovementWatcher.h"
  68. #include "../../gui/components/special/juce_ActiveXControlComponent.h"
  69. #include "../../gui/components/special/juce_WebBrowserComponent.h"
  70. #include "../../gui/components/special/juce_DropShadower.h"
  71. #include "../../gui/components/special/juce_SystemTrayIconComponent.h"
  72. #include "../../gui/components/filebrowser/juce_FileChooser.h"
  73. #include "../../gui/components/lookandfeel/juce_LookAndFeel.h"
  74. #include "../../audio/audio_file_formats/juce_AudioCDBurner.h"
  75. #include "../../audio/audio_file_formats/juce_AudioCDReader.h"
  76. #include "../../audio/audio_sources/juce_AudioSource.h"
  77. #include "../../audio/dsp/juce_AudioDataConverters.h"
  78. #include "../../audio/devices/juce_AudioIODeviceType.h"
  79. #include "../../audio/midi/juce_MidiOutput.h"
  80. #include "../../audio/midi/juce_MidiInput.h"
  81. #include "../../containers/juce_ScopedValueSetter.h"
  82. #include "../../utilities/juce_WindowsRegistry.h"
  83. //==============================================================================
  84. #define JUCE_INCLUDED_FILE 1
  85. // Now include the actual code files..
  86. #include "juce_win32_SystemStats.cpp"
  87. #include "juce_win32_Threads.cpp"
  88. #include "juce_win32_Files.cpp"
  89. #include "juce_win32_Network.cpp"
  90. #include "juce_win32_Registry.cpp"
  91. #if ! JUCE_ONLY_BUILD_CORE_LIBRARY
  92. #include "juce_win32_HiddenMessageWindow.h"
  93. #include "juce_win32_Messaging.cpp"
  94. #include "juce_win32_Fonts.cpp"
  95. #include "juce_win32_Direct2DGraphicsContext.cpp"
  96. #include "juce_win32_Windowing.cpp"
  97. #include "juce_win32_FileChooser.cpp"
  98. #include "juce_win32_Misc.cpp"
  99. #include "juce_win32_ActiveXComponent.cpp"
  100. #include "juce_win32_QuickTimeMovieComponent.cpp"
  101. #include "juce_win32_DirectShowComponent.cpp"
  102. #include "juce_win32_WebBrowserComponent.cpp"
  103. #include "juce_win32_OpenGLComponent.cpp"
  104. #include "juce_win32_AudioCDReader.cpp"
  105. #include "../common/juce_MidiDataConcatenator.h"
  106. #include "juce_win32_Midi.cpp"
  107. #include "juce_win32_ASIO.cpp"
  108. #include "juce_win32_DirectSound.cpp"
  109. #include "juce_win32_WASAPI.cpp"
  110. #include "juce_win32_CameraDevice.cpp"
  111. #endif
  112. //==============================================================================
  113. // Auto-link the other win32 libs that are needed by library calls..
  114. #if (JUCE_AMALGAMATED_TEMPLATE || defined (JUCE_DLL_BUILD)) && JUCE_MSVC && ! DONT_AUTOLINK_TO_WIN32_LIBRARIES
  115. #include "juce_win32_AutoLinkLibraries.h"
  116. #endif
  117. END_JUCE_NAMESPACE
  118. #endif