diff --git a/modules/juce_audio_plugin_client/VST3/juce_VST3_Wrapper.cpp b/modules/juce_audio_plugin_client/VST3/juce_VST3_Wrapper.cpp index 5ccc777f76..b97482e520 100644 --- a/modules/juce_audio_plugin_client/VST3/juce_VST3_Wrapper.cpp +++ b/modules/juce_audio_plugin_client/VST3/juce_VST3_Wrapper.cpp @@ -32,6 +32,13 @@ #define JUCE_VST3HEADERS_INCLUDE_HEADERS_ONLY 1 #endif +#if (_WIN32 || _WIN64) + // old VS2008 needs this to include the VST3 SDK + #ifndef nullptr + #define nullptr (0) + #endif +#endif + #include "../../juce_audio_processors/format_types/juce_VST3Headers.h" #undef JUCE_VST3HEADERS_INCLUDE_HEADERS_ONLY diff --git a/modules/juce_core/native/juce_BasicNativeHeaders.h b/modules/juce_core/native/juce_BasicNativeHeaders.h index 798d4a0372..38c6e357cb 100644 --- a/modules/juce_core/native/juce_BasicNativeHeaders.h +++ b/modules/juce_core/native/juce_BasicNativeHeaders.h @@ -78,6 +78,8 @@ #pragma warning (push, 0) // disable all warnings whilst including system headers #endif + #define NOMINMAX + #define STRICT 1 #define WIN32_LEAN_AND_MEAN 1 #if JUCE_MINGW diff --git a/modules/juce_core/system/juce_StandardHeader.h b/modules/juce_core/system/juce_StandardHeader.h index 153ec84b2e..68de49f081 100644 --- a/modules/juce_core/system/juce_StandardHeader.h +++ b/modules/juce_core/system/juce_StandardHeader.h @@ -56,6 +56,7 @@ #include #include #include +#include //============================================================================== #include "juce_CompilerSupport.h" diff --git a/modules/juce_gui_basics/native/juce_win32_Windowing.cpp b/modules/juce_gui_basics/native/juce_win32_Windowing.cpp index 4916bfcf45..821a8dac8d 100644 --- a/modules/juce_gui_basics/native/juce_win32_Windowing.cpp +++ b/modules/juce_gui_basics/native/juce_win32_Windowing.cpp @@ -1304,11 +1304,12 @@ private: case WM_NCMOUSEHOVER: case WM_MOUSEHOVER: case WM_TOUCH: + #ifdef WM_POINTERUPDATE case WM_POINTERUPDATE: case WM_POINTERDOWN: case WM_POINTERUP: + #endif return isHWNDBlockedByModalComponents (m.hwnd); - case WM_NCLBUTTONDOWN: case WM_NCLBUTTONDBLCLK: case WM_NCRBUTTONDOWN: @@ -2035,6 +2036,7 @@ private: return true; } + #ifdef WM_POINTERUPDATE TOUCHINPUT emulateTouchEventFromPointer (LPARAM lParam, WPARAM wParam) { TOUCHINPUT touchInput; @@ -2045,6 +2047,7 @@ private: return touchInput; } + #endif //============================================================================== void sendModifierKeyChangeIfNeeded() @@ -2535,16 +2538,19 @@ private: return 1; //============================================================================== + #ifdef WM_POINTERUPDATE case WM_POINTERUPDATE: handleTouchInput (emulateTouchEventFromPointer (lParam, wParam), false, false); return 0; + case WM_POINTERDOWN: handleTouchInput (emulateTouchEventFromPointer (lParam, wParam), true, false); return 0; + case WM_POINTERUP: handleTouchInput (emulateTouchEventFromPointer (lParam, wParam), false, true); return 0; + #endif + case WM_MOUSEMOVE: doMouseMove (getPointFromLParam (lParam), false); return 0; case WM_MOUSELEAVE: doMouseExit(); return 0; - case WM_POINTERDOWN: handleTouchInput (emulateTouchEventFromPointer (lParam, wParam), true, false); return 0; case WM_LBUTTONDOWN: case WM_MBUTTONDOWN: case WM_RBUTTONDOWN: doMouseDown (getPointFromLParam (lParam), wParam); return 0; - case WM_POINTERUP: handleTouchInput (emulateTouchEventFromPointer (lParam, wParam), false, true); return 0; case WM_LBUTTONUP: case WM_MBUTTONUP: case WM_RBUTTONUP: doMouseUp (getPointFromLParam (lParam), wParam); return 0;