@@ -237,7 +237,7 @@ OBJECTS := \ | |||
$(OBJDIR)/juce_Colours_89de9488.o \ | |||
$(OBJDIR)/juce_EdgeTable_6a5fefda.o \ | |||
$(OBJDIR)/juce_FillType_5805677e.o \ | |||
$(OBJDIR)/juce_Graphics_27754bac.o \ | |||
$(OBJDIR)/juce_GraphicsContext_119e43ed.o \ | |||
$(OBJDIR)/juce_Justification_dc284c3b.o \ | |||
$(OBJDIR)/juce_LowLevelGraphicsPostScriptRenderer_2e8a92a.o \ | |||
$(OBJDIR)/juce_LowLevelGraphicsSoftwareRenderer_97263906.o \ | |||
@@ -1377,9 +1377,9 @@ $(OBJDIR)/juce_FillType_5805677e.o: ../../src/gui/graphics/contexts/juce_FillTyp | |||
@echo "Compiling juce_FillType.cpp" | |||
@$(CXX) $(CXXFLAGS) -o "$@" -c "$<" | |||
$(OBJDIR)/juce_Graphics_27754bac.o: ../../src/gui/graphics/contexts/juce_Graphics.cpp | |||
$(OBJDIR)/juce_GraphicsContext_119e43ed.o: ../../src/gui/graphics/contexts/juce_GraphicsContext.cpp | |||
-@mkdir -p $(OBJDIR) | |||
@echo "Compiling juce_Graphics.cpp" | |||
@echo "Compiling juce_GraphicsContext.cpp" | |||
@$(CXX) $(CXXFLAGS) -o "$@" -c "$<" | |||
$(OBJDIR)/juce_Justification_dc284c3b.o: ../../src/gui/graphics/contexts/juce_Justification.cpp | |||
@@ -206,7 +206,7 @@ | |||
82A9E0388C9BF3A698DCEF69 = { isa = PBXBuildFile; fileRef = 41AF663E626B8F6D319B9966; }; | |||
7F6749BFCF2F134468825D45 = { isa = PBXBuildFile; fileRef = 3EC800323255128D69539BAE; }; | |||
277CF246D5EE48868E38E625 = { isa = PBXBuildFile; fileRef = B7251E779500BA77F5522CC7; }; | |||
C80AF2A1AC481DF47D0A9D8D = { isa = PBXBuildFile; fileRef = 3F8C8157E25C3856D967F5D9; }; | |||
4D285D9D3F5955F2FD574D04 = { isa = PBXBuildFile; fileRef = EF50EEDCAB08F842AB8DE6DA; }; | |||
30F9B53BD00228406F6477DF = { isa = PBXBuildFile; fileRef = 2E03ADF975A126C1F2F7B667; }; | |||
759633D5CDB35874FD37DD7F = { isa = PBXBuildFile; fileRef = ED3ED8389001D55FBDCF1087; }; | |||
E0F309D93E9A7F0CC71C4503 = { isa = PBXBuildFile; fileRef = 835CC2A1E67E7B19E41F8FBD; }; | |||
@@ -831,8 +831,8 @@ | |||
BD52C1CCEAF6FEC311B9FDA1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_EdgeTable.h"; path = "../../src/gui/graphics/contexts/juce_EdgeTable.h"; sourceTree = "SOURCE_ROOT"; }; | |||
B7251E779500BA77F5522CC7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FillType.cpp"; path = "../../src/gui/graphics/contexts/juce_FillType.cpp"; sourceTree = "SOURCE_ROOT"; }; | |||
1F0DB4B2825AF638183B50D6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FillType.h"; path = "../../src/gui/graphics/contexts/juce_FillType.h"; sourceTree = "SOURCE_ROOT"; }; | |||
3F8C8157E25C3856D967F5D9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Graphics.cpp"; path = "../../src/gui/graphics/contexts/juce_Graphics.cpp"; sourceTree = "SOURCE_ROOT"; }; | |||
C83BFA102896453D4AB96E35 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Graphics.h"; path = "../../src/gui/graphics/contexts/juce_Graphics.h"; sourceTree = "SOURCE_ROOT"; }; | |||
EF50EEDCAB08F842AB8DE6DA = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GraphicsContext.cpp"; path = "../../src/gui/graphics/contexts/juce_GraphicsContext.cpp"; sourceTree = "SOURCE_ROOT"; }; | |||
6320F9BAFA094B5C0C828C58 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_GraphicsContext.h"; path = "../../src/gui/graphics/contexts/juce_GraphicsContext.h"; sourceTree = "SOURCE_ROOT"; }; | |||
2E03ADF975A126C1F2F7B667 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Justification.cpp"; path = "../../src/gui/graphics/contexts/juce_Justification.cpp"; sourceTree = "SOURCE_ROOT"; }; | |||
36268DD78D00323D391ECAAB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Justification.h"; path = "../../src/gui/graphics/contexts/juce_Justification.h"; sourceTree = "SOURCE_ROOT"; }; | |||
D6B4FED1F1D9FB82C6424438 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LowLevelGraphicsContext.h"; path = "../../src/gui/graphics/contexts/juce_LowLevelGraphicsContext.h"; sourceTree = "SOURCE_ROOT"; }; | |||
@@ -1642,8 +1642,8 @@ | |||
BD52C1CCEAF6FEC311B9FDA1, | |||
B7251E779500BA77F5522CC7, | |||
1F0DB4B2825AF638183B50D6, | |||
3F8C8157E25C3856D967F5D9, | |||
C83BFA102896453D4AB96E35, | |||
EF50EEDCAB08F842AB8DE6DA, | |||
6320F9BAFA094B5C0C828C58, | |||
2E03ADF975A126C1F2F7B667, | |||
36268DD78D00323D391ECAAB, | |||
D6B4FED1F1D9FB82C6424438, | |||
@@ -2266,7 +2266,7 @@ | |||
82A9E0388C9BF3A698DCEF69, | |||
7F6749BFCF2F134468825D45, | |||
277CF246D5EE48868E38E625, | |||
C80AF2A1AC481DF47D0A9D8D, | |||
4D285D9D3F5955F2FD574D04, | |||
30F9B53BD00228406F6477DF, | |||
759633D5CDB35874FD37DD7F, | |||
E0F309D93E9A7F0CC71C4503, | |||
@@ -700,8 +700,8 @@ | |||
<File RelativePath="..\..\src\gui\graphics\contexts\juce_EdgeTable.h"/> | |||
<File RelativePath="..\..\src\gui\graphics\contexts\juce_FillType.cpp"/> | |||
<File RelativePath="..\..\src\gui\graphics\contexts\juce_FillType.h"/> | |||
<File RelativePath="..\..\src\gui\graphics\contexts\juce_Graphics.cpp"/> | |||
<File RelativePath="..\..\src\gui\graphics\contexts\juce_Graphics.h"/> | |||
<File RelativePath="..\..\src\gui\graphics\contexts\juce_GraphicsContext.cpp"/> | |||
<File RelativePath="..\..\src\gui\graphics\contexts\juce_GraphicsContext.h"/> | |||
<File RelativePath="..\..\src\gui\graphics\contexts\juce_Justification.cpp"/> | |||
<File RelativePath="..\..\src\gui\graphics\contexts\juce_Justification.h"/> | |||
<File RelativePath="..\..\src\gui\graphics\contexts\juce_LowLevelGraphicsContext.h"/> | |||
@@ -700,8 +700,8 @@ | |||
<File RelativePath="..\..\src\gui\graphics\contexts\juce_EdgeTable.h"/> | |||
<File RelativePath="..\..\src\gui\graphics\contexts\juce_FillType.cpp"/> | |||
<File RelativePath="..\..\src\gui\graphics\contexts\juce_FillType.h"/> | |||
<File RelativePath="..\..\src\gui\graphics\contexts\juce_Graphics.cpp"/> | |||
<File RelativePath="..\..\src\gui\graphics\contexts\juce_Graphics.h"/> | |||
<File RelativePath="..\..\src\gui\graphics\contexts\juce_GraphicsContext.cpp"/> | |||
<File RelativePath="..\..\src\gui\graphics\contexts\juce_GraphicsContext.h"/> | |||
<File RelativePath="..\..\src\gui\graphics\contexts\juce_Justification.cpp"/> | |||
<File RelativePath="..\..\src\gui\graphics\contexts\juce_Justification.h"/> | |||
<File RelativePath="..\..\src\gui\graphics\contexts\juce_LowLevelGraphicsContext.h"/> | |||
@@ -702,8 +702,8 @@ | |||
<File RelativePath="..\..\src\gui\graphics\contexts\juce_EdgeTable.h"/> | |||
<File RelativePath="..\..\src\gui\graphics\contexts\juce_FillType.cpp"/> | |||
<File RelativePath="..\..\src\gui\graphics\contexts\juce_FillType.h"/> | |||
<File RelativePath="..\..\src\gui\graphics\contexts\juce_Graphics.cpp"/> | |||
<File RelativePath="..\..\src\gui\graphics\contexts\juce_Graphics.h"/> | |||
<File RelativePath="..\..\src\gui\graphics\contexts\juce_GraphicsContext.cpp"/> | |||
<File RelativePath="..\..\src\gui\graphics\contexts\juce_GraphicsContext.h"/> | |||
<File RelativePath="..\..\src\gui\graphics\contexts\juce_Justification.cpp"/> | |||
<File RelativePath="..\..\src\gui\graphics\contexts\juce_Justification.h"/> | |||
<File RelativePath="..\..\src\gui\graphics\contexts\juce_LowLevelGraphicsContext.h"/> | |||
@@ -320,7 +320,7 @@ | |||
<ClCompile Include="..\..\src\gui\graphics\colour\juce_Colours.cpp"/> | |||
<ClCompile Include="..\..\src\gui\graphics\contexts\juce_EdgeTable.cpp"/> | |||
<ClCompile Include="..\..\src\gui\graphics\contexts\juce_FillType.cpp"/> | |||
<ClCompile Include="..\..\src\gui\graphics\contexts\juce_Graphics.cpp"/> | |||
<ClCompile Include="..\..\src\gui\graphics\contexts\juce_GraphicsContext.cpp"/> | |||
<ClCompile Include="..\..\src\gui\graphics\contexts\juce_Justification.cpp"/> | |||
<ClCompile Include="..\..\src\gui\graphics\contexts\juce_LowLevelGraphicsPostScriptRenderer.cpp"/> | |||
<ClCompile Include="..\..\src\gui\graphics\contexts\juce_LowLevelGraphicsSoftwareRenderer.cpp"/> | |||
@@ -710,7 +710,7 @@ | |||
<ClInclude Include="..\..\src\gui\graphics\colour\juce_PixelFormats.h"/> | |||
<ClInclude Include="..\..\src\gui\graphics\contexts\juce_EdgeTable.h"/> | |||
<ClInclude Include="..\..\src\gui\graphics\contexts\juce_FillType.h"/> | |||
<ClInclude Include="..\..\src\gui\graphics\contexts\juce_Graphics.h"/> | |||
<ClInclude Include="..\..\src\gui\graphics\contexts\juce_GraphicsContext.h"/> | |||
<ClInclude Include="..\..\src\gui\graphics\contexts\juce_Justification.h"/> | |||
<ClInclude Include="..\..\src\gui\graphics\contexts\juce_LowLevelGraphicsContext.h"/> | |||
<ClInclude Include="..\..\src\gui\graphics\contexts\juce_LowLevelGraphicsPostScriptRenderer.h"/> | |||
@@ -817,7 +817,7 @@ | |||
<ClCompile Include="..\..\src\gui\graphics\contexts\juce_FillType.cpp"> | |||
<Filter>Juce\Source\gui\graphics\contexts</Filter> | |||
</ClCompile> | |||
<ClCompile Include="..\..\src\gui\graphics\contexts\juce_Graphics.cpp"> | |||
<ClCompile Include="..\..\src\gui\graphics\contexts\juce_GraphicsContext.cpp"> | |||
<Filter>Juce\Source\gui\graphics\contexts</Filter> | |||
</ClCompile> | |||
<ClCompile Include="..\..\src\gui\graphics\contexts\juce_Justification.cpp"> | |||
@@ -2061,7 +2061,7 @@ | |||
<ClInclude Include="..\..\src\gui\graphics\contexts\juce_FillType.h"> | |||
<Filter>Juce\Source\gui\graphics\contexts</Filter> | |||
</ClInclude> | |||
<ClInclude Include="..\..\src\gui\graphics\contexts\juce_Graphics.h"> | |||
<ClInclude Include="..\..\src\gui\graphics\contexts\juce_GraphicsContext.h"> | |||
<Filter>Juce\Source\gui\graphics\contexts</Filter> | |||
</ClInclude> | |||
<ClInclude Include="..\..\src\gui\graphics\contexts\juce_Justification.h"> | |||
@@ -206,7 +206,7 @@ | |||
82A9E0388C9BF3A698DCEF69 = { isa = PBXBuildFile; fileRef = 41AF663E626B8F6D319B9966; }; | |||
7F6749BFCF2F134468825D45 = { isa = PBXBuildFile; fileRef = 3EC800323255128D69539BAE; }; | |||
277CF246D5EE48868E38E625 = { isa = PBXBuildFile; fileRef = B7251E779500BA77F5522CC7; }; | |||
C80AF2A1AC481DF47D0A9D8D = { isa = PBXBuildFile; fileRef = 3F8C8157E25C3856D967F5D9; }; | |||
4D285D9D3F5955F2FD574D04 = { isa = PBXBuildFile; fileRef = EF50EEDCAB08F842AB8DE6DA; }; | |||
30F9B53BD00228406F6477DF = { isa = PBXBuildFile; fileRef = 2E03ADF975A126C1F2F7B667; }; | |||
759633D5CDB35874FD37DD7F = { isa = PBXBuildFile; fileRef = ED3ED8389001D55FBDCF1087; }; | |||
E0F309D93E9A7F0CC71C4503 = { isa = PBXBuildFile; fileRef = 835CC2A1E67E7B19E41F8FBD; }; | |||
@@ -831,8 +831,8 @@ | |||
BD52C1CCEAF6FEC311B9FDA1 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_EdgeTable.h"; path = "../../src/gui/graphics/contexts/juce_EdgeTable.h"; sourceTree = "SOURCE_ROOT"; }; | |||
B7251E779500BA77F5522CC7 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_FillType.cpp"; path = "../../src/gui/graphics/contexts/juce_FillType.cpp"; sourceTree = "SOURCE_ROOT"; }; | |||
1F0DB4B2825AF638183B50D6 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_FillType.h"; path = "../../src/gui/graphics/contexts/juce_FillType.h"; sourceTree = "SOURCE_ROOT"; }; | |||
3F8C8157E25C3856D967F5D9 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Graphics.cpp"; path = "../../src/gui/graphics/contexts/juce_Graphics.cpp"; sourceTree = "SOURCE_ROOT"; }; | |||
C83BFA102896453D4AB96E35 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Graphics.h"; path = "../../src/gui/graphics/contexts/juce_Graphics.h"; sourceTree = "SOURCE_ROOT"; }; | |||
EF50EEDCAB08F842AB8DE6DA = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_GraphicsContext.cpp"; path = "../../src/gui/graphics/contexts/juce_GraphicsContext.cpp"; sourceTree = "SOURCE_ROOT"; }; | |||
6320F9BAFA094B5C0C828C58 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_GraphicsContext.h"; path = "../../src/gui/graphics/contexts/juce_GraphicsContext.h"; sourceTree = "SOURCE_ROOT"; }; | |||
2E03ADF975A126C1F2F7B667 = { isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Justification.cpp"; path = "../../src/gui/graphics/contexts/juce_Justification.cpp"; sourceTree = "SOURCE_ROOT"; }; | |||
36268DD78D00323D391ECAAB = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_Justification.h"; path = "../../src/gui/graphics/contexts/juce_Justification.h"; sourceTree = "SOURCE_ROOT"; }; | |||
D6B4FED1F1D9FB82C6424438 = { isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_LowLevelGraphicsContext.h"; path = "../../src/gui/graphics/contexts/juce_LowLevelGraphicsContext.h"; sourceTree = "SOURCE_ROOT"; }; | |||
@@ -1642,8 +1642,8 @@ | |||
BD52C1CCEAF6FEC311B9FDA1, | |||
B7251E779500BA77F5522CC7, | |||
1F0DB4B2825AF638183B50D6, | |||
3F8C8157E25C3856D967F5D9, | |||
C83BFA102896453D4AB96E35, | |||
EF50EEDCAB08F842AB8DE6DA, | |||
6320F9BAFA094B5C0C828C58, | |||
2E03ADF975A126C1F2F7B667, | |||
36268DD78D00323D391ECAAB, | |||
D6B4FED1F1D9FB82C6424438, | |||
@@ -2270,7 +2270,7 @@ | |||
82A9E0388C9BF3A698DCEF69, | |||
7F6749BFCF2F134468825D45, | |||
277CF246D5EE48868E38E625, | |||
C80AF2A1AC481DF47D0A9D8D, | |||
4D285D9D3F5955F2FD574D04, | |||
30F9B53BD00228406F6477DF, | |||
759633D5CDB35874FD37DD7F, | |||
E0F309D93E9A7F0CC71C4503, | |||
@@ -1026,10 +1026,10 @@ | |||
file="src/gui/graphics/contexts/juce_FillType.cpp"/> | |||
<FILE id="Xxhmuibx3" name="juce_FillType.h" compile="0" resource="0" | |||
file="src/gui/graphics/contexts/juce_FillType.h"/> | |||
<FILE id="Sd5zuwpAa" name="juce_Graphics.cpp" compile="1" resource="0" | |||
file="src/gui/graphics/contexts/juce_Graphics.cpp"/> | |||
<FILE id="EPJbCrSdq" name="juce_Graphics.h" compile="0" resource="0" | |||
file="src/gui/graphics/contexts/juce_Graphics.h"/> | |||
<FILE id="Sd5zuwpAa" name="juce_GraphicsContext.cpp" compile="1" resource="0" | |||
file="src/gui/graphics/contexts/juce_GraphicsContext.cpp"/> | |||
<FILE id="EPJbCrSdq" name="juce_GraphicsContext.h" compile="0" resource="0" | |||
file="src/gui/graphics/contexts/juce_GraphicsContext.h"/> | |||
<FILE id="vLJIp7a4o" name="juce_Justification.cpp" compile="1" resource="0" | |||
file="src/gui/graphics/contexts/juce_Justification.cpp"/> | |||
<FILE id="xlTND5UsD" name="juce_Justification.h" compile="0" resource="0" | |||
@@ -350,7 +350,7 @@ | |||
#include "../src/gui/graphics/colour/juce_Colours.cpp" | |||
#include "../src/gui/graphics/contexts/juce_EdgeTable.cpp" | |||
#include "../src/gui/graphics/contexts/juce_FillType.cpp" | |||
#include "../src/gui/graphics/contexts/juce_Graphics.cpp" | |||
#include "../src/gui/graphics/contexts/juce_GraphicsContext.cpp" | |||
#include "../src/gui/graphics/contexts/juce_Justification.cpp" | |||
#include "../src/gui/graphics/contexts/juce_LowLevelGraphicsPostScriptRenderer.cpp" | |||
#include "../src/gui/graphics/contexts/juce_LowLevelGraphicsSoftwareRenderer.cpp" | |||
@@ -31,7 +31,7 @@ | |||
#include "../../io/streams/juce_OutputStream.h" | |||
#include "../../events/juce_ChangeBroadcaster.h" | |||
#include "../../events/juce_Timer.h" | |||
#include "../../gui/graphics/contexts/juce_Graphics.h" | |||
#include "../../gui/graphics/contexts/juce_GraphicsContext.h" | |||
#include "juce_AudioFormatReader.h" | |||
#include "juce_AudioFormatManager.h" | |||
@@ -124,10 +124,6 @@ | |||
#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 | |||
@@ -39,6 +39,15 @@ | |||
- 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 | |||
@@ -26,7 +26,7 @@ | |||
#ifndef __JUCE_LOOKANDFEEL_JUCEHEADER__ | |||
#define __JUCE_LOOKANDFEEL_JUCEHEADER__ | |||
#include "../../graphics/contexts/juce_Graphics.h" | |||
#include "../../graphics/contexts/juce_GraphicsContext.h" | |||
#include "../../graphics/effects/juce_DropShadowEffect.h" | |||
#include "../controls/juce_Slider.h" | |||
#include "../layout/juce_TabbedComponent.h" | |||
@@ -27,7 +27,7 @@ | |||
BEGIN_JUCE_NAMESPACE | |||
#include "juce_Graphics.h" | |||
#include "juce_GraphicsContext.h" | |||
#include "../fonts/juce_GlyphArrangement.h" | |||
#include "../geometry/juce_PathStrokeType.h" | |||
#include "juce_LowLevelGraphicsContext.h" |
@@ -23,8 +23,8 @@ | |||
============================================================================== | |||
*/ | |||
#ifndef __JUCE_GRAPHICS_JUCEHEADER__ | |||
#define __JUCE_GRAPHICS_JUCEHEADER__ | |||
#ifndef __JUCE_GRAPHICSCONTEXT_JUCEHEADER__ | |||
#define __JUCE_GRAPHICSCONTEXT_JUCEHEADER__ | |||
#include "../fonts/juce_Font.h" | |||
#include "../geometry/juce_Rectangle.h" | |||
@@ -701,4 +701,4 @@ private: | |||
}; | |||
#endif // __JUCE_GRAPHICS_JUCEHEADER__ | |||
#endif // __JUCE_GRAPHICSCONTEXT_JUCEHEADER__ |
@@ -26,7 +26,7 @@ | |||
#ifndef __JUCE_IMAGEEFFECTFILTER_JUCEHEADER__ | |||
#define __JUCE_IMAGEEFFECTFILTER_JUCEHEADER__ | |||
#include "../../graphics/contexts/juce_Graphics.h" | |||
#include "../../graphics/contexts/juce_GraphicsContext.h" | |||
//============================================================================== | |||
@@ -27,7 +27,7 @@ | |||
#define __JUCE_GLYPHARRANGEMENT_JUCEHEADER__ | |||
#include "juce_Font.h" | |||
#include "../contexts/juce_Graphics.h" | |||
#include "../contexts/juce_GraphicsContext.h" | |||
//============================================================================== | |||
@@ -28,7 +28,7 @@ | |||
BEGIN_JUCE_NAMESPACE | |||
#include "juce_TextLayout.h" | |||
#include "../contexts/juce_Graphics.h" | |||
#include "../contexts/juce_GraphicsContext.h" | |||
//============================================================================== | |||
@@ -28,7 +28,7 @@ | |||
BEGIN_JUCE_NAMESPACE | |||
#include "juce_Image.h" | |||
#include "../contexts/juce_Graphics.h" | |||
#include "../contexts/juce_GraphicsContext.h" | |||
#include "../contexts/juce_LowLevelGraphicsSoftwareRenderer.h" | |||
#include "../colour/juce_PixelFormats.h" | |||
#include "../../../containers/juce_SparseSet.h" | |||
@@ -27,7 +27,7 @@ | |||
#define __JUCE_IMAGE_JUCEHEADER__ | |||
#include "../colour/juce_Colour.h" | |||
#include "../contexts/juce_Graphics.h" | |||
#include "../contexts/juce_GraphicsContext.h" | |||
#include "../../../containers/juce_Variant.h" | |||
#include "../../../containers/juce_NamedValueSet.h" | |||
@@ -179,9 +179,7 @@ | |||
#ifndef __JUCE_LADSPAPLUGINFORMAT_JUCEHEADER__ | |||
#include "audio/plugin_host/formats/juce_LADSPAPluginFormat.h" | |||
#endif | |||
#ifndef __JUCE_VSTMIDIEVENTLIST_JUCEHEADER__ | |||
#include "audio/plugin_host/formats/juce_VSTMidiEventList.h" | |||
#endif | |||
#include "audio/plugin_host/formats/juce_VSTMidiEventList.h" | |||
#ifndef __JUCE_VSTPLUGINFORMAT_JUCEHEADER__ | |||
#include "audio/plugin_host/formats/juce_VSTPluginFormat.h" | |||
#endif | |||
@@ -671,8 +669,8 @@ | |||
#ifndef __JUCE_FILLTYPE_JUCEHEADER__ | |||
#include "gui/graphics/contexts/juce_FillType.h" | |||
#endif | |||
#ifndef __JUCE_GRAPHICS_JUCEHEADER__ | |||
#include "gui/graphics/contexts/juce_Graphics.h" | |||
#ifndef __JUCE_GRAPHICSCONTEXT_JUCEHEADER__ | |||
#include "gui/graphics/contexts/juce_GraphicsContext.h" | |||
#endif | |||
#ifndef __JUCE_JUSTIFICATION_JUCEHEADER__ | |||
#include "gui/graphics/contexts/juce_Justification.h" | |||
@@ -831,26 +831,6 @@ void UIViewComponentPeer::viewFocusLoss() | |||
} | |||
} | |||
void juce_HandleProcessFocusChange() | |||
{ | |||
if (ComponentPeer::isValidPeer (currentlyFocusedPeer)) | |||
{ | |||
if (Process::isForegroundProcess()) | |||
{ | |||
currentlyFocusedPeer->handleFocusGain(); | |||
ModalComponentManager::getInstance()->bringModalComponentsToFront(); | |||
} | |||
else | |||
{ | |||
currentlyFocusedPeer->handleFocusLoss(); | |||
// turn kiosk mode off if we lose focus.. | |||
Desktop::getInstance().setKioskModeComponent (nullptr); | |||
} | |||
} | |||
} | |||
bool UIViewComponentPeer::isFocused() const | |||
{ | |||
return isSharedWindow ? this == currentlyFocusedPeer | |||
@@ -27,6 +27,12 @@ | |||
// compiled on its own). | |||
#if JUCE_INCLUDED_FILE | |||
//============================================================================== | |||
typedef void (*AppFocusChangeCallback)(); | |||
AppFocusChangeCallback appFocusChangeCallback = nullptr; | |||
typedef bool (*CheckEventBlockedByModalComps) (NSEvent*); | |||
CheckEventBlockedByModalComps isEventBlockedByModalComps = nullptr; | |||
//============================================================================== | |||
/* When you use multiple DLLs which share similarly-named obj-c classes - like | |||
@@ -91,7 +97,8 @@ public: | |||
virtual void focusChanged() | |||
{ | |||
juce_HandleProcessFocusChange(); | |||
if (appFocusChangeCallback != nullptr) | |||
(*appFocusChangeCallback)(); | |||
} | |||
struct CallbackMessagePayload | |||
@@ -328,93 +335,6 @@ void MessageManager::stopDispatchLoop() | |||
[NSEvent startPeriodicEventsAfterDelay: 0 withPeriod: 0.1]; | |||
} | |||
namespace | |||
{ | |||
bool isEventBlockedByModalComps (NSEvent* e) | |||
{ | |||
if (Component::getNumCurrentlyModalComponents() == 0) | |||
return false; | |||
NSWindow* const w = [e window]; | |||
if (w == nil || [w worksWhenModal]) | |||
return false; | |||
bool isKey = false, isInputAttempt = false; | |||
switch ([e type]) | |||
{ | |||
case NSKeyDown: | |||
case NSKeyUp: | |||
isKey = isInputAttempt = true; | |||
break; | |||
case NSLeftMouseDown: | |||
case NSRightMouseDown: | |||
case NSOtherMouseDown: | |||
isInputAttempt = true; | |||
break; | |||
case NSLeftMouseDragged: | |||
case NSRightMouseDragged: | |||
case NSLeftMouseUp: | |||
case NSRightMouseUp: | |||
case NSOtherMouseUp: | |||
case NSOtherMouseDragged: | |||
if (Desktop::getInstance().getDraggingMouseSource(0) != nullptr) | |||
return false; | |||
break; | |||
case NSMouseMoved: | |||
case NSMouseEntered: | |||
case NSMouseExited: | |||
case NSCursorUpdate: | |||
case NSScrollWheel: | |||
case NSTabletPoint: | |||
case NSTabletProximity: | |||
break; | |||
default: | |||
return false; | |||
} | |||
for (int i = ComponentPeer::getNumPeers(); --i >= 0;) | |||
{ | |||
ComponentPeer* const peer = ComponentPeer::getPeer (i); | |||
NSView* const compView = (NSView*) peer->getNativeHandle(); | |||
if ([compView window] == w) | |||
{ | |||
if (isKey) | |||
{ | |||
if (compView == [w firstResponder]) | |||
return false; | |||
} | |||
else | |||
{ | |||
NSViewComponentPeer* nsViewPeer = dynamic_cast<NSViewComponentPeer*> (peer); | |||
if ((nsViewPeer == nullptr || ! nsViewPeer->isSharedWindow) | |||
? NSPointInRect ([e locationInWindow], NSMakeRect (0, 0, [w frame].size.width, [w frame].size.height)) | |||
: NSPointInRect ([compView convertPoint: [e locationInWindow] fromView: nil], [compView bounds])) | |||
return false; | |||
} | |||
} | |||
} | |||
if (isInputAttempt) | |||
{ | |||
if (! [NSApp isActive]) | |||
[NSApp activateIgnoringOtherApps: YES]; | |||
Component* const modal = Component::getCurrentlyModalComponent (0); | |||
if (modal != nullptr) | |||
modal->inputAttemptWhenModal(); | |||
} | |||
return true; | |||
} | |||
} | |||
#if JUCE_MODAL_LOOPS_PERMITTED | |||
bool MessageManager::runDispatchLoopUntil (int millisecondsToRunFor) | |||
{ | |||
@@ -433,7 +353,7 @@ bool MessageManager::runDispatchLoopUntil (int millisecondsToRunFor) | |||
inMode: NSDefaultRunLoopMode | |||
dequeue: YES]; | |||
if (e != nil && ! isEventBlockedByModalComps (e)) | |||
if (e != nil && (isEventBlockedByModalComps == nullptr || ! (*isEventBlockedByModalComps) (e))) | |||
[NSApp sendEvent: e]; | |||
if (Time::getMillisecondCounter() >= endTime) | |||
@@ -29,6 +29,11 @@ | |||
class NSViewComponentPeer; | |||
typedef void (*AppFocusChangeCallback)(); | |||
extern AppFocusChangeCallback appFocusChangeCallback; | |||
typedef bool (*CheckEventBlockedByModalComps) (NSEvent*); | |||
extern CheckEventBlockedByModalComps isEventBlockedByModalComps; | |||
//============================================================================== | |||
END_JUCE_NAMESPACE | |||
@@ -304,6 +309,112 @@ public: | |||
static Array<int> keysCurrentlyDown; | |||
private: | |||
static void appFocusChanged() | |||
{ | |||
keysCurrentlyDown.clear(); | |||
if (isValidPeer (currentlyFocusedPeer)) | |||
{ | |||
if (Process::isForegroundProcess()) | |||
{ | |||
currentlyFocusedPeer->handleFocusGain(); | |||
ModalComponentManager::getInstance()->bringModalComponentsToFront(); | |||
} | |||
else | |||
{ | |||
currentlyFocusedPeer->handleFocusLoss(); | |||
// turn kiosk mode off if we lose focus.. | |||
Desktop::getInstance().setKioskModeComponent (nullptr); | |||
} | |||
} | |||
} | |||
static bool checkEventBlockedByModalComps (NSEvent* e) | |||
{ | |||
if (Component::getNumCurrentlyModalComponents() == 0) | |||
return false; | |||
NSWindow* const w = [e window]; | |||
if (w == nil || [w worksWhenModal]) | |||
return false; | |||
bool isKey = false, isInputAttempt = false; | |||
switch ([e type]) | |||
{ | |||
case NSKeyDown: | |||
case NSKeyUp: | |||
isKey = isInputAttempt = true; | |||
break; | |||
case NSLeftMouseDown: | |||
case NSRightMouseDown: | |||
case NSOtherMouseDown: | |||
isInputAttempt = true; | |||
break; | |||
case NSLeftMouseDragged: | |||
case NSRightMouseDragged: | |||
case NSLeftMouseUp: | |||
case NSRightMouseUp: | |||
case NSOtherMouseUp: | |||
case NSOtherMouseDragged: | |||
if (Desktop::getInstance().getDraggingMouseSource(0) != nullptr) | |||
return false; | |||
break; | |||
case NSMouseMoved: | |||
case NSMouseEntered: | |||
case NSMouseExited: | |||
case NSCursorUpdate: | |||
case NSScrollWheel: | |||
case NSTabletPoint: | |||
case NSTabletProximity: | |||
break; | |||
default: | |||
return false; | |||
} | |||
for (int i = ComponentPeer::getNumPeers(); --i >= 0;) | |||
{ | |||
ComponentPeer* const peer = ComponentPeer::getPeer (i); | |||
NSView* const compView = (NSView*) peer->getNativeHandle(); | |||
if ([compView window] == w) | |||
{ | |||
if (isKey) | |||
{ | |||
if (compView == [w firstResponder]) | |||
return false; | |||
} | |||
else | |||
{ | |||
NSViewComponentPeer* nsViewPeer = dynamic_cast<NSViewComponentPeer*> (peer); | |||
if ((nsViewPeer == nullptr || ! nsViewPeer->isSharedWindow) | |||
? NSPointInRect ([e locationInWindow], NSMakeRect (0, 0, [w frame].size.width, [w frame].size.height)) | |||
: NSPointInRect ([compView convertPoint: [e locationInWindow] fromView: nil], [compView bounds])) | |||
return false; | |||
} | |||
} | |||
} | |||
if (isInputAttempt) | |||
{ | |||
if (! [NSApp isActive]) | |||
[NSApp activateIgnoringOtherApps: YES]; | |||
Component* const modal = Component::getCurrentlyModalComponent (0); | |||
if (modal != nullptr) | |||
modal->inputAttemptWhenModal(); | |||
} | |||
return true; | |||
} | |||
JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (NSViewComponentPeer); | |||
}; | |||
@@ -821,6 +932,9 @@ NSViewComponentPeer::NSViewComponentPeer (Component* const component_, | |||
#endif | |||
recursiveToFrontCall (false) | |||
{ | |||
appFocusChangeCallback = appFocusChanged; | |||
isEventBlockedByModalComps = checkEventBlockedByModalComps; | |||
NSRect r = NSMakeRect (0, 0, (CGFloat) component->getWidth(), (CGFloat) component->getHeight()); | |||
view = [[JuceNSView alloc] initWithOwner: this withFrame: r]; | |||
@@ -1226,28 +1340,6 @@ void NSViewComponentPeer::viewFocusLoss() | |||
} | |||
} | |||
void juce_HandleProcessFocusChange() | |||
{ | |||
NSViewComponentPeer::keysCurrentlyDown.clear(); | |||
if (NSViewComponentPeer::isValidPeer (NSViewComponentPeer::currentlyFocusedPeer)) | |||
{ | |||
if (Process::isForegroundProcess()) | |||
{ | |||
NSViewComponentPeer::currentlyFocusedPeer->handleFocusGain(); | |||
ModalComponentManager::getInstance()->bringModalComponentsToFront(); | |||
} | |||
else | |||
{ | |||
NSViewComponentPeer::currentlyFocusedPeer->handleFocusLoss(); | |||
// turn kiosk mode off if we lose focus.. | |||
Desktop::getInstance().setKioskModeComponent (nullptr); | |||
} | |||
} | |||
} | |||
bool NSViewComponentPeer::isFocused() const | |||
{ | |||
return isSharedWindow ? this == currentlyFocusedPeer | |||
@@ -120,11 +120,11 @@ BEGIN_JUCE_NAMESPACE | |||
#include "../common/juce_MidiDataConcatenator.h" | |||
#if JUCE_IOS | |||
#include "juce_ios_MessageManager.mm" | |||
#include "juce_mac_Fonts.mm" | |||
#include "juce_mac_CoreGraphicsContext.mm" | |||
#include "juce_ios_UIViewComponentPeer.mm" | |||
#include "juce_ios_Windowing.mm" | |||
#include "juce_ios_MessageManager.mm" | |||
#include "juce_mac_FileChooser.mm" | |||
#include "juce_mac_OpenGLComponent.mm" | |||
#include "juce_mac_MouseCursor.mm" | |||
@@ -132,6 +132,7 @@ BEGIN_JUCE_NAMESPACE | |||
#include "juce_ios_Audio.cpp" | |||
#include "juce_mac_CoreMidi.cpp" | |||
#else | |||
#include "juce_mac_MessageManager.mm" | |||
#include "juce_mac_Fonts.mm" // (must go before juce_mac_CoreGraphicsContext.mm) | |||
#include "juce_mac_CoreGraphicsContext.mm" | |||
#include "juce_mac_NSViewComponentPeer.mm" | |||
@@ -145,7 +146,6 @@ BEGIN_JUCE_NAMESPACE | |||
#include "juce_mac_QuickTimeMovieComponent.mm" | |||
#include "juce_mac_AudioCDBurner.mm" | |||
#include "juce_mac_AudioCDReader.mm" | |||
#include "juce_mac_MessageManager.mm" | |||
#include "juce_mac_WebBrowserComponent.mm" | |||
#include "juce_mac_CoreAudio.cpp" | |||
#include "juce_mac_CoreMidi.cpp" | |||
@@ -27,6 +27,18 @@ | |||
// compiled on its own). | |||
#if JUCE_INCLUDED_FILE | |||
//============================================================================== | |||
ScopedAutoReleasePool::ScopedAutoReleasePool() | |||
{ | |||
pool = [[NSAutoreleasePool alloc] init]; | |||
} | |||
ScopedAutoReleasePool::~ScopedAutoReleasePool() | |||
{ | |||
[((NSAutoreleasePool*) pool) release]; | |||
} | |||
//============================================================================== | |||
namespace SystemStatsHelpers | |||
{ | |||
#if JUCE_INTEL | |||
@@ -44,16 +44,5 @@ namespace | |||
} | |||
} | |||
//============================================================================== | |||
ScopedAutoReleasePool::ScopedAutoReleasePool() | |||
{ | |||
pool = [[NSAutoreleasePool alloc] init]; | |||
} | |||
ScopedAutoReleasePool::~ScopedAutoReleasePool() | |||
{ | |||
[((NSAutoreleasePool*) pool) release]; | |||
} | |||
#endif // __JUCE_OSX_OBJCHELPERS_JUCEHEADER__ |