Audio plugin host https://kx.studio/carla
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.

146 lines
4.7KB

  1. /*
  2. ==============================================================================
  3. This file is part of the JUCE library.
  4. Copyright (c) 2015 - ROLI Ltd.
  5. Permission is granted to use this software under the terms of either:
  6. a) the GPL v2 (or any later version)
  7. b) the Affero GPL v3
  8. Details of these licenses can be found at: www.gnu.org/licenses
  9. JUCE is distributed in the hope that it will be useful, but WITHOUT ANY
  10. WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
  11. A PARTICULAR PURPOSE. See the GNU General Public License for more details.
  12. ------------------------------------------------------------------------------
  13. To release a closed-source product which uses JUCE, commercial licenses are
  14. available: visit www.juce.com for more information.
  15. ==============================================================================
  16. */
  17. /*******************************************************************************
  18. The block below describes the properties of this module, and is read by
  19. the Projucer to automatically generate project code that uses it.
  20. For details about the syntax and how to create or use a module, see the
  21. JUCE Module Format.txt file.
  22. BEGIN_JUCE_MODULE_DECLARATION
  23. ID: juce_graphics
  24. vendor: juce
  25. version: 4.3.1
  26. name: JUCE graphics classes
  27. description: Classes for 2D vector graphics, image loading/saving, font handling, etc.
  28. website: http://www.juce.com/juce
  29. license: GPL/Commercial
  30. dependencies: juce_events
  31. OSXFrameworks: Cocoa QuartzCore
  32. iOSFrameworks: CoreGraphics CoreText QuartzCore
  33. linuxPackages: x11 xinerama xext freetype2
  34. END_JUCE_MODULE_DECLARATION
  35. *******************************************************************************/
  36. #ifndef JUCE_GRAPHICS_H_INCLUDED // %%
  37. #define JUCE_GRAPHICS_H_INCLUDED
  38. #include <juce_core/juce_core.h>
  39. #include <juce_events/juce_events.h>
  40. //==============================================================================
  41. /** Config: JUCE_USE_COREIMAGE_LOADER
  42. On OSX, enabling this flag means that the CoreImage codecs will be used to load
  43. PNG/JPEG/GIF files. It is enabled by default, but you may want to disable it if
  44. you'd rather use libpng, libjpeg, etc.
  45. */
  46. #ifndef JUCE_USE_COREIMAGE_LOADER
  47. #define JUCE_USE_COREIMAGE_LOADER 1
  48. #endif
  49. /** Config: JUCE_USE_DIRECTWRITE
  50. Enabling this flag means that DirectWrite will be used when available for font
  51. management and layout.
  52. */
  53. #ifndef JUCE_USE_DIRECTWRITE
  54. #define JUCE_USE_DIRECTWRITE 1
  55. #endif
  56. #ifndef JUCE_INCLUDE_PNGLIB_CODE
  57. #define JUCE_INCLUDE_PNGLIB_CODE 1
  58. #endif
  59. #ifndef JUCE_INCLUDE_JPEGLIB_CODE
  60. #define JUCE_INCLUDE_JPEGLIB_CODE 1
  61. #endif
  62. #ifndef USE_COREGRAPHICS_RENDERING
  63. #define USE_COREGRAPHICS_RENDERING 1
  64. #endif
  65. //==============================================================================
  66. namespace juce
  67. {
  68. class Image;
  69. class AffineTransform;
  70. class Path;
  71. class Font;
  72. class Graphics;
  73. class FillType;
  74. class LowLevelGraphicsContext;
  75. #include "geometry/juce_AffineTransform.h"
  76. #include "geometry/juce_Point.h"
  77. #include "geometry/juce_Line.h"
  78. #include "geometry/juce_Rectangle.h"
  79. #include "placement/juce_Justification.h"
  80. #include "geometry/juce_Path.h"
  81. #include "geometry/juce_RectangleList.h"
  82. #include "colour/juce_PixelFormats.h"
  83. #include "colour/juce_Colour.h"
  84. #include "colour/juce_ColourGradient.h"
  85. #include "colour/juce_Colours.h"
  86. #include "geometry/juce_BorderSize.h"
  87. #include "geometry/juce_EdgeTable.h"
  88. #include "geometry/juce_PathIterator.h"
  89. #include "geometry/juce_PathStrokeType.h"
  90. #include "placement/juce_RectanglePlacement.h"
  91. #include "images/juce_ImageCache.h"
  92. #include "images/juce_ImageConvolutionKernel.h"
  93. #include "images/juce_ImageFileFormat.h"
  94. #include "fonts/juce_Typeface.h"
  95. #include "fonts/juce_Font.h"
  96. #include "fonts/juce_AttributedString.h"
  97. #include "fonts/juce_GlyphArrangement.h"
  98. #include "fonts/juce_TextLayout.h"
  99. #include "fonts/juce_CustomTypeface.h"
  100. #include "contexts/juce_GraphicsContext.h"
  101. #include "contexts/juce_LowLevelGraphicsContext.h"
  102. #include "images/juce_Image.h"
  103. #include "colour/juce_FillType.h"
  104. #include "native/juce_RenderingHelpers.h"
  105. #include "contexts/juce_LowLevelGraphicsSoftwareRenderer.h"
  106. #include "contexts/juce_LowLevelGraphicsPostScriptRenderer.h"
  107. #include "effects/juce_ImageEffectFilter.h"
  108. #include "effects/juce_DropShadowEffect.h"
  109. #include "effects/juce_GlowEffect.h"
  110. #if JUCE_GRAPHICS_INCLUDE_COREGRAPHICS_HELPERS && (JUCE_MAC || JUCE_IOS)
  111. #include "native/juce_mac_CoreGraphicsHelpers.h"
  112. #include "native/juce_mac_CoreGraphicsContext.h"
  113. #endif
  114. }
  115. #endif // JUCE_GRAPHICS_H_INCLUDED