Browse Source

Fix for Cubase 32/64 bit bridge. Fix for Jucer RTAS project generation.

tags/2021-05-28
Julian Storer 14 years ago
parent
commit
dffa2dc6e7
8 changed files with 1640 additions and 1627 deletions
  1. +4
    -1
      extras/Jucer (experimental)/Source/Project/jucer_ProjectExport_XCode.h
  2. +15
    -12
      extras/audio plugins/wrapper/RTAS/juce_RTAS_Wrapper.cpp
  3. +1589
    -1596
      extras/audio plugins/wrapper/VST/juce_VST_Wrapper.cpp
  4. +15
    -8
      juce_amalgamated.cpp
  5. +1
    -1
      juce_amalgamated.h
  6. +1
    -1
      src/core/juce_StandardHeader.h
  7. +1
    -1
      src/native/windows/juce_win32_OpenGLComponent.cpp
  8. +14
    -7
      src/native/windows/juce_win32_Windowing.cpp

+ 4
- 1
extras/Jucer (experimental)/Source/Project/jucer_ProjectExport_XCode.h View File

@@ -506,7 +506,10 @@ private:
}
s.add ("ZERO_LINK = NO");
s.add ("DEBUG_INFORMATION_FORMAT = \"dwarf-with-dsym\"");
if (! isRTAS()) // (dwarf seems to be incompatible with the RTAS libs)
s.add ("DEBUG_INFORMATION_FORMAT = \"dwarf-with-dsym\"");
s.add ("PRODUCT_NAME = \"" + config.getTargetBinaryName().toString() + "\"");
return s;
}


+ 15
- 12
extras/audio plugins/wrapper/RTAS/juce_RTAS_Wrapper.cpp View File

@@ -222,18 +222,21 @@ public:
jassert (editorComp != 0);
}
Rect oldRect;
GetRect (&oldRect);
Rect r;
r.left = 0;
r.top = 0;
r.right = editorComp->getWidth();
r.bottom = editorComp->getHeight();
SetRect (&r);
if ((oldRect.right != r.right) || (oldRect.bottom != r.bottom))
startTimer (50);
if (editorComp->getWidth() != 0 && editorComp->getHeight() != 0)
{
Rect oldRect;
GetRect (&oldRect);
Rect r;
r.left = 0;
r.top = 0;
r.right = editorComp->getWidth();
r.bottom = editorComp->getHeight();
SetRect (&r);
if ((oldRect.right != r.right) || (oldRect.bottom != r.bottom))
startTimer (50);
}
}
void timerCallback()


+ 1589
- 1596
extras/audio plugins/wrapper/VST/juce_VST_Wrapper.cpp
File diff suppressed because it is too large
View File


+ 15
- 8
juce_amalgamated.cpp View File

@@ -241804,7 +241804,8 @@ public:
};

Win32ComponentPeer (Component* const component,
const int windowStyleFlags)
const int windowStyleFlags,
HWND parentToAddTo_)
: ComponentPeer (component, windowStyleFlags),
dontRepaint (false),
#if JUCE_DIRECT2D
@@ -241817,7 +241818,8 @@ public:
isMouseOver (false),
hasCreatedCaret (false),
currentWindowIcon (0),
dropTarget (0)
dropTarget (0),
parentToAddTo (parentToAddTo_)
{
callFunctionIfNotLocked (&createWindowCallback, this);

@@ -242269,7 +242271,7 @@ public:
static ModifierKeys modifiersAtLastCallback;

private:
HWND hwnd;
HWND hwnd, parentToAddTo;
ScopedPointer<DropShadower> shadower;
RenderingEngineType currentRenderingEngine;
#if JUCE_DIRECT2D
@@ -242371,7 +242373,7 @@ private:

void createWindow()
{
DWORD exstyle = WS_EX_ACCEPTFILES; // | WS_EX_NOACTIVATE;
DWORD exstyle = WS_EX_ACCEPTFILES;
DWORD type = WS_CLIPSIBLINGS | WS_CLIPCHILDREN;

if (hasTitleBar())
@@ -242391,6 +242393,10 @@ private:
if ((styleFlags & windowIsResizable) != 0)
type |= WS_THICKFRAME;
}
else if (parentToAddTo != 0)
{
type |= WS_CHILD;
}
else
{
type |= WS_POPUP | WS_SYSMENU;
@@ -242414,7 +242420,8 @@ private:
&& Desktop::canUseSemiTransparentWindows())
exstyle |= WS_EX_LAYERED;

hwnd = CreateWindowEx (exstyle, WindowClassHolder::getInstance()->windowClassName, L"", type, 0, 0, 0, 0, 0, 0, 0, 0);
hwnd = CreateWindowEx (exstyle, WindowClassHolder::getInstance()->windowClassName, L"", type, 0, 0, 0, 0,
parentToAddTo, 0, (HINSTANCE) PlatformUtilities::getCurrentModuleInstanceHandle(), 0);

#if JUCE_DIRECT2D
updateDirect2DContext();
@@ -243571,9 +243578,9 @@ private:
ModifierKeys Win32ComponentPeer::currentModifiers;
ModifierKeys Win32ComponentPeer::modifiersAtLastCallback;

ComponentPeer* Component::createNewPeer (int styleFlags, void* /*nativeWindowToAttachTo*/)
ComponentPeer* Component::createNewPeer (int styleFlags, void* nativeWindowToAttachTo)
{
return new Win32ComponentPeer (this, styleFlags);
return new Win32ComponentPeer (this, styleFlags, (HWND) nativeWindowToAttachTo);
}

juce_ImplementSingleton_SingleThreaded (Win32ComponentPeer::WindowClassHolder);
@@ -246203,7 +246210,7 @@ private:

void createNativeWindow()
{
nativeWindow = new Win32ComponentPeer (component, 0);
nativeWindow = new Win32ComponentPeer (component, 0, 0);
nativeWindow->dontRepaint = true;
nativeWindow->setVisible (true);



+ 1
- 1
juce_amalgamated.h View File

@@ -64,7 +64,7 @@
*/
#define JUCE_MAJOR_VERSION 1
#define JUCE_MINOR_VERSION 52
#define JUCE_BUILDNUMBER 61
#define JUCE_BUILDNUMBER 62

/** Current Juce version number.



+ 1
- 1
src/core/juce_StandardHeader.h View File

@@ -33,7 +33,7 @@
*/
#define JUCE_MAJOR_VERSION 1
#define JUCE_MINOR_VERSION 52
#define JUCE_BUILDNUMBER 61
#define JUCE_BUILDNUMBER 62
/** Current Juce version number.


+ 1
- 1
src/native/windows/juce_win32_OpenGLComponent.cpp View File

@@ -391,7 +391,7 @@ private:
//==============================================================================
void createNativeWindow()
{
nativeWindow = new Win32ComponentPeer (component, 0);
nativeWindow = new Win32ComponentPeer (component, 0, 0);
nativeWindow->dontRepaint = true;
nativeWindow->setVisible (true);


+ 14
- 7
src/native/windows/juce_win32_Windowing.cpp View File

@@ -390,7 +390,8 @@ public:
//==============================================================================
Win32ComponentPeer (Component* const component,
const int windowStyleFlags)
const int windowStyleFlags,
HWND parentToAddTo_)
: ComponentPeer (component, windowStyleFlags),
dontRepaint (false),
#if JUCE_DIRECT2D
@@ -403,7 +404,8 @@ public:
isMouseOver (false),
hasCreatedCaret (false),
currentWindowIcon (0),
dropTarget (0)
dropTarget (0),
parentToAddTo (parentToAddTo_)
{
callFunctionIfNotLocked (&createWindowCallback, this);
@@ -860,7 +862,7 @@ public:
static ModifierKeys modifiersAtLastCallback;
private:
HWND hwnd;
HWND hwnd, parentToAddTo;
ScopedPointer<DropShadower> shadower;
RenderingEngineType currentRenderingEngine;
#if JUCE_DIRECT2D
@@ -967,7 +969,7 @@ private:
void createWindow()
{
DWORD exstyle = WS_EX_ACCEPTFILES; // | WS_EX_NOACTIVATE;
DWORD exstyle = WS_EX_ACCEPTFILES;
DWORD type = WS_CLIPSIBLINGS | WS_CLIPCHILDREN;
if (hasTitleBar())
@@ -987,6 +989,10 @@ private:
if ((styleFlags & windowIsResizable) != 0)
type |= WS_THICKFRAME;
}
else if (parentToAddTo != 0)
{
type |= WS_CHILD;
}
else
{
type |= WS_POPUP | WS_SYSMENU;
@@ -1010,7 +1016,8 @@ private:
&& Desktop::canUseSemiTransparentWindows())
exstyle |= WS_EX_LAYERED;
hwnd = CreateWindowEx (exstyle, WindowClassHolder::getInstance()->windowClassName, L"", type, 0, 0, 0, 0, 0, 0, 0, 0);
hwnd = CreateWindowEx (exstyle, WindowClassHolder::getInstance()->windowClassName, L"", type, 0, 0, 0, 0,
parentToAddTo, 0, (HINSTANCE) PlatformUtilities::getCurrentModuleInstanceHandle(), 0);
#if JUCE_DIRECT2D
updateDirect2DContext();
@@ -2180,9 +2187,9 @@ private:
ModifierKeys Win32ComponentPeer::currentModifiers;
ModifierKeys Win32ComponentPeer::modifiersAtLastCallback;
ComponentPeer* Component::createNewPeer (int styleFlags, void* /*nativeWindowToAttachTo*/)
ComponentPeer* Component::createNewPeer (int styleFlags, void* nativeWindowToAttachTo)
{
return new Win32ComponentPeer (this, styleFlags);
return new Win32ComponentPeer (this, styleFlags, (HWND) nativeWindowToAttachTo);
}
juce_ImplementSingleton_SingleThreaded (Win32ComponentPeer::WindowClassHolder);


Loading…
Cancel
Save