Browse Source

Update juce

tags/2018-04-16
falkTX 11 years ago
parent
commit
b8ce065c6e
35 changed files with 148 additions and 141 deletions
  1. +2
    -25
      .gitignore
  2. +12
    -12
      libs/juce/source/modules/juce_audio_basics/buffers/juce_FloatVectorOperations.cpp
  3. +1
    -1
      libs/juce/source/modules/juce_audio_basics/juce_module_info
  4. +2
    -2
      libs/juce/source/modules/juce_audio_basics/midi/juce_MidiBuffer.cpp
  5. +4
    -4
      libs/juce/source/modules/juce_audio_basics/midi/juce_MidiMessage.cpp
  6. +1
    -1
      libs/juce/source/modules/juce_audio_devices/juce_module_info
  7. +2
    -2
      libs/juce/source/modules/juce_audio_devices/native/juce_mac_CoreAudio.cpp
  8. +1
    -1
      libs/juce/source/modules/juce_audio_formats/format/juce_AudioFormatReader.cpp
  9. +1
    -1
      libs/juce/source/modules/juce_audio_formats/juce_module_info
  10. +40
    -34
      libs/juce/source/modules/juce_audio_plugin_client/VST/juce_VST_Wrapper.cpp
  11. +1
    -1
      libs/juce/source/modules/juce_audio_plugin_client/juce_module_info
  12. +15
    -9
      libs/juce/source/modules/juce_audio_processors/format_types/juce_AudioUnitPluginFormat.mm
  13. +1
    -1
      libs/juce/source/modules/juce_audio_processors/juce_module_info
  14. +21
    -14
      libs/juce/source/modules/juce_audio_utils/gui/juce_AudioDeviceSelectorComponent.cpp
  15. +1
    -1
      libs/juce/source/modules/juce_audio_utils/juce_module_info
  16. +1
    -1
      libs/juce/source/modules/juce_core/containers/juce_ReferenceCountedArray.h
  17. +1
    -1
      libs/juce/source/modules/juce_core/javascript/juce_Javascript.cpp
  18. +1
    -1
      libs/juce/source/modules/juce_core/juce_module_info
  19. +12
    -1
      libs/juce/source/modules/juce_core/native/juce_win32_Network.cpp
  20. +2
    -2
      libs/juce/source/modules/juce_core/streams/juce_MemoryInputStream.cpp
  21. +1
    -1
      libs/juce/source/modules/juce_core/streams/juce_MemoryOutputStream.h
  22. +1
    -1
      libs/juce/source/modules/juce_core/system/juce_StandardHeader.h
  23. +1
    -1
      libs/juce/source/modules/juce_core/text/juce_String.cpp
  24. +5
    -5
      libs/juce/source/modules/juce_core/zip/juce_ZipFile.cpp
  25. +1
    -1
      libs/juce/source/modules/juce_data_structures/juce_module_info
  26. +1
    -1
      libs/juce/source/modules/juce_events/juce_module_info
  27. +1
    -1
      libs/juce/source/modules/juce_graphics/juce_module_info
  28. +1
    -1
      libs/juce/source/modules/juce_gui_basics/juce_module_info
  29. +2
    -2
      libs/juce/source/modules/juce_gui_basics/mouse/juce_MouseInputSource.cpp
  30. +1
    -1
      libs/juce/source/modules/juce_gui_basics/native/juce_mac_NSViewComponentPeer.mm
  31. +1
    -1
      libs/juce/source/modules/juce_gui_basics/native/juce_mac_Windowing.mm
  32. +7
    -7
      libs/juce/source/modules/juce_gui_basics/widgets/juce_Slider.cpp
  33. +1
    -1
      libs/juce/source/modules/juce_gui_extra/juce_module_info
  34. +1
    -1
      libs/juce/source/modules/juce_gui_extra/misc/juce_LiveConstantEditor.cpp
  35. +1
    -1
      libs/juce/source/modules/juce_gui_extra/misc/juce_LiveConstantEditor.h

+ 2
- 25
.gitignore View File

@@ -1,5 +1,6 @@
*~
*.a
*.cdbs-orig
*.dll
*.dylib
*.exe
@@ -8,18 +9,9 @@
*.so
*.so.*

*.cdbs-orig
*.moc
moc_*.cpp
qrc_*.cpp
ui_*.h

*.lv2
*.make
*.pro.user
Makefile
Makefile.Debug
Makefile.Release
object_script.*.Debug
object_script.*.Release

@@ -31,29 +23,13 @@ object_script.*.Release
.kdev_include_paths
.kdev4

bin/ladspa
bin/dssi
bin/lv2
bin/vst
bin/standalone
debian
intermediate
lv2_ttl_generator

libs/distrho/dgl/Makefile.copy
libs/juce-2.0/source/amalgamation/
libs/juce-2.0/source/docs/
libs/juce-2.0/source/extras/
libs/juce-2.0/source/modules/juce_box2d/
libs/juce-2.0/source/modules/juce_browser_plugin_client/
libs/juce-2.0/source/modules/juce_cryptography/
libs/juce-2.0/source/modules/juce_opengl/
libs/juce-2.0/source/modules/juce_video/
libs/juce-2.0/source/juce.h
libs/juce-2.0/source/juce_amalgamated.*

scripts/*.h
scripts/*.pro

sdks/ASIOSDK2/*
sdks/vstsdk2.4/*
@@ -73,4 +49,5 @@ libs/juce/source/modules/juce_box2d/
libs/juce/source/modules/juce_browser_plugin_client/
libs/juce/source/modules/juce_cryptography/
libs/juce/source/modules/juce_opengl/
libs/juce/source/modules/juce_tracktion_marketplace/
libs/juce/source/modules/juce_video/

+ 12
- 12
libs/juce/source/modules/juce_audio_basics/buffers/juce_FloatVectorOperations.cpp View File

@@ -412,7 +412,7 @@ void JUCE_CALLTYPE FloatVectorOperations::copy (double* dest, const double* src,
void JUCE_CALLTYPE FloatVectorOperations::copyWithMultiply (float* dest, const float* src, float multiplier, int num) noexcept
{
#if JUCE_USE_VDSP_FRAMEWORK
vDSP_vsmul (src, 1, &multiplier, dest, 1, num);
vDSP_vsmul (src, 1, &multiplier, dest, 1, (vDSP_Length) num);
#else
JUCE_PERFORM_VEC_OP_SRC_DEST (dest[i] = src[i] * multiplier, Mode::mul (mult, s),
JUCE_LOAD_SRC, JUCE_INCREMENT_SRC_DEST,
@@ -423,7 +423,7 @@ void JUCE_CALLTYPE FloatVectorOperations::copyWithMultiply (float* dest, const f
void JUCE_CALLTYPE FloatVectorOperations::copyWithMultiply (double* dest, const double* src, double multiplier, int num) noexcept
{
#if JUCE_USE_VDSP_FRAMEWORK
vDSP_vsmulD (src, 1, &multiplier, dest, 1, num);
vDSP_vsmulD (src, 1, &multiplier, dest, 1, (vDSP_Length) num);
#else
JUCE_PERFORM_VEC_OP_SRC_DEST (dest[i] = src[i] * multiplier, Mode::mul (mult, s),
JUCE_LOAD_SRC, JUCE_INCREMENT_SRC_DEST,
@@ -446,7 +446,7 @@ void JUCE_CALLTYPE FloatVectorOperations::add (double* dest, double amount, int
void JUCE_CALLTYPE FloatVectorOperations::add (float* dest, const float* src, int num) noexcept
{
#if JUCE_USE_VDSP_FRAMEWORK
vDSP_vadd (src, 1, dest, 1, dest, 1, num);
vDSP_vadd (src, 1, dest, 1, dest, 1, (vDSP_Length) num);
#else
JUCE_PERFORM_VEC_OP_SRC_DEST (dest[i] += src[i], Mode::add (d, s), JUCE_LOAD_SRC_DEST, JUCE_INCREMENT_SRC_DEST, )
#endif
@@ -455,7 +455,7 @@ void JUCE_CALLTYPE FloatVectorOperations::add (float* dest, const float* src, in
void JUCE_CALLTYPE FloatVectorOperations::add (double* dest, const double* src, int num) noexcept
{
#if JUCE_USE_VDSP_FRAMEWORK
vDSP_vaddD (src, 1, dest, 1, dest, 1, num);
vDSP_vaddD (src, 1, dest, 1, dest, 1, (vDSP_Length) num);
#else
JUCE_PERFORM_VEC_OP_SRC_DEST (dest[i] += src[i], Mode::add (d, s), JUCE_LOAD_SRC_DEST, JUCE_INCREMENT_SRC_DEST, )
#endif
@@ -464,7 +464,7 @@ void JUCE_CALLTYPE FloatVectorOperations::add (double* dest, const double* src,
void JUCE_CALLTYPE FloatVectorOperations::subtract (float* dest, const float* src, int num) noexcept
{
#if JUCE_USE_VDSP_FRAMEWORK
vDSP_vsub (src, 1, dest, 1, dest, 1, num);
vDSP_vsub (src, 1, dest, 1, dest, 1, (vDSP_Length) num);
#else
JUCE_PERFORM_VEC_OP_SRC_DEST (dest[i] -= src[i], Mode::sub (d, s), JUCE_LOAD_SRC_DEST, JUCE_INCREMENT_SRC_DEST, )
#endif
@@ -473,7 +473,7 @@ void JUCE_CALLTYPE FloatVectorOperations::subtract (float* dest, const float* sr
void JUCE_CALLTYPE FloatVectorOperations::subtract (double* dest, const double* src, int num) noexcept
{
#if JUCE_USE_VDSP_FRAMEWORK
vDSP_vsubD (src, 1, dest, 1, dest, 1, num);
vDSP_vsubD (src, 1, dest, 1, dest, 1, (vDSP_Length) num);
#else
JUCE_PERFORM_VEC_OP_SRC_DEST (dest[i] -= src[i], Mode::sub (d, s), JUCE_LOAD_SRC_DEST, JUCE_INCREMENT_SRC_DEST, )
#endif
@@ -496,7 +496,7 @@ void JUCE_CALLTYPE FloatVectorOperations::addWithMultiply (double* dest, const d
void JUCE_CALLTYPE FloatVectorOperations::multiply (float* dest, const float* src, int num) noexcept
{
#if JUCE_USE_VDSP_FRAMEWORK
vDSP_vmul (src, 1, dest, 1, dest, 1, num);
vDSP_vmul (src, 1, dest, 1, dest, 1, (vDSP_Length) num);
#else
JUCE_PERFORM_VEC_OP_SRC_DEST (dest[i] *= src[i], Mode::mul (d, s), JUCE_LOAD_SRC_DEST, JUCE_INCREMENT_SRC_DEST, )
#endif
@@ -505,7 +505,7 @@ void JUCE_CALLTYPE FloatVectorOperations::multiply (float* dest, const float* sr
void JUCE_CALLTYPE FloatVectorOperations::multiply (double* dest, const double* src, int num) noexcept
{
#if JUCE_USE_VDSP_FRAMEWORK
vDSP_vmulD (src, 1, dest, 1, dest, 1, num);
vDSP_vmulD (src, 1, dest, 1, dest, 1, (vDSP_Length) num);
#else
JUCE_PERFORM_VEC_OP_SRC_DEST (dest[i] *= src[i], Mode::mul (d, s), JUCE_LOAD_SRC_DEST, JUCE_INCREMENT_SRC_DEST, )
#endif
@@ -514,7 +514,7 @@ void JUCE_CALLTYPE FloatVectorOperations::multiply (double* dest, const double*
void JUCE_CALLTYPE FloatVectorOperations::multiply (float* dest, float multiplier, int num) noexcept
{
#if JUCE_USE_VDSP_FRAMEWORK
vDSP_vsmul (dest, 1, &multiplier, dest, 1, num);
vDSP_vsmul (dest, 1, &multiplier, dest, 1, (vDSP_Length) num);
#else
JUCE_PERFORM_VEC_OP_DEST (dest[i] *= multiplier, Mode::mul (d, mult), JUCE_LOAD_DEST,
const Mode::ParallelType mult = Mode::load1 (multiplier);)
@@ -524,7 +524,7 @@ void JUCE_CALLTYPE FloatVectorOperations::multiply (float* dest, float multiplie
void JUCE_CALLTYPE FloatVectorOperations::multiply (double* dest, double multiplier, int num) noexcept
{
#if JUCE_USE_VDSP_FRAMEWORK
vDSP_vsmulD (dest, 1, &multiplier, dest, 1, num);
vDSP_vsmulD (dest, 1, &multiplier, dest, 1, (vDSP_Length) num);
#else
JUCE_PERFORM_VEC_OP_DEST (dest[i] *= multiplier, Mode::mul (d, mult), JUCE_LOAD_DEST,
const Mode::ParallelType mult = Mode::load1 (multiplier);)
@@ -643,8 +643,8 @@ public:
const int range = random.nextBool() ? 500 : 10;
const int num = random.nextInt (range) + 1;
HeapBlock<ValueType> buffer1 (num + 16), buffer2 (num + 16);
HeapBlock<int> buffer3 (num + 16);
HeapBlock<ValueType> buffer1 ((size_t) num + 16), buffer2 ((size_t) num + 16);
HeapBlock<int> buffer3 ((size_t) num + 16);
#if JUCE_ARM
ValueType* const data1 = buffer1;


+ 1
- 1
libs/juce/source/modules/juce_audio_basics/juce_module_info View File

@@ -1,7 +1,7 @@
{
"id": "juce_audio_basics",
"name": "JUCE audio and midi data classes",
"version": "3.0.6",
"version": "3.0.7",
"description": "Classes for audio buffer manipulation, midi message handling, synthesis, etc",
"website": "http://www.juce.com/juce",
"license": "GPL/Commercial",


+ 2
- 2
libs/juce/source/modules/juce_audio_basics/midi/juce_MidiBuffer.cpp View File

@@ -210,7 +210,7 @@ bool MidiBuffer::Iterator::getNextEvent (const uint8* &midiData, int& numBytes,
const int itemSize = MidiBufferHelpers::getEventDataSize (data);
numBytes = itemSize;
midiData = data + sizeof (int32) + sizeof (uint16);
data += sizeof (int32) + sizeof (uint16) + itemSize;
data += sizeof (int32) + sizeof (uint16) + (size_t) itemSize;
return true;
}
@@ -223,7 +223,7 @@ bool MidiBuffer::Iterator::getNextEvent (MidiMessage& result, int& samplePositio
samplePosition = MidiBufferHelpers::getEventTime (data);
const int itemSize = MidiBufferHelpers::getEventDataSize (data);
result = MidiMessage (data + sizeof (int32) + sizeof (uint16), itemSize, samplePosition);
data += sizeof (int32) + sizeof (uint16) + itemSize;
data += sizeof (int32) + sizeof (uint16) + (size_t) itemSize;
return true;
}

+ 4
- 4
libs/juce/source/modules/juce_audio_basics/midi/juce_MidiMessage.cpp View File

@@ -129,7 +129,7 @@ MidiMessage::MidiMessage (const MidiMessage& other)
{
if (other.allocatedData != nullptr)
{
allocatedData.malloc (size);
allocatedData.malloc ((size_t) size);
memcpy (allocatedData, other.allocatedData, (size_t) size);
}
else
@@ -143,7 +143,7 @@ MidiMessage::MidiMessage (const MidiMessage& other, const double newTimeStamp)
{
if (other.allocatedData != nullptr)
{
allocatedData.malloc (size);
allocatedData.malloc ((size_t) size);
memcpy (allocatedData, other.allocatedData, (size_t) size);
}
else
@@ -255,7 +255,7 @@ MidiMessage& MidiMessage::operator= (const MidiMessage& other)
if (other.allocatedData != nullptr)
{
allocatedData.malloc (size);
allocatedData.malloc ((size_t) size);
memcpy (allocatedData, other.allocatedData, (size_t) size);
}
else
@@ -297,7 +297,7 @@ uint8* MidiMessage::allocateSpace (int bytes)
{
if (bytes > 4)
{
allocatedData.malloc (bytes);
allocatedData.malloc ((size_t) bytes);
return allocatedData;
}


+ 1
- 1
libs/juce/source/modules/juce_audio_devices/juce_module_info View File

@@ -1,7 +1,7 @@
{
"id": "juce_audio_devices",
"name": "JUCE audio and midi I/O device classes",
"version": "3.0.6",
"version": "3.0.7",
"description": "Classes to play and record from audio and midi i/o devices.",
"website": "http://www.juce.com/juce",
"license": "GPL/Commercial",


+ 2
- 2
libs/juce/source/modules/juce_audio_devices/native/juce_mac_CoreAudio.cpp View File

@@ -233,7 +233,7 @@ public:
size = sizeof (nameNSString);
pa.mSelector = kAudioObjectPropertyElementName;
pa.mElement = chanNum + 1;
pa.mElement = (AudioObjectPropertyElement) chanNum + 1;
if (AudioObjectGetPropertyData (deviceID, &pa, 0, nullptr, &size, &nameNSString) == noErr)
{
@@ -394,7 +394,7 @@ public:
if (OK (AudioObjectGetPropertyData (deviceID, &pa, 0, nullptr, &size, &sr)))
sampleRate = sr;
UInt32 framesPerBuf = bufferSize;
UInt32 framesPerBuf = (UInt32) bufferSize;
size = sizeof (framesPerBuf);
pa.mSelector = kAudioDevicePropertyBufferFrameSize;
AudioObjectGetPropertyData (deviceID, &pa, 0, nullptr, &size, &framesPerBuf);


+ 1
- 1
libs/juce/source/modules/juce_audio_formats/format/juce_AudioFormatReader.cpp View File

@@ -162,7 +162,7 @@ void AudioFormatReader::read (AudioSampleBuffer* buffer,
}
else
{
HeapBlock<int*> chans (numTargetChannels);
HeapBlock<int*> chans ((size_t) numTargetChannels);
readChannels (*this, chans, buffer, startSample, numSamples, readerStartSample, numTargetChannels);
}


+ 1
- 1
libs/juce/source/modules/juce_audio_formats/juce_module_info View File

@@ -1,7 +1,7 @@
{
"id": "juce_audio_formats",
"name": "JUCE audio file format codecs",
"version": "3.0.6",
"version": "3.0.7",
"description": "Classes for reading and writing various audio file formats.",
"website": "http://www.juce.com/juce",
"license": "GPL/Commercial",


+ 40
- 34
libs/juce/source/modules/juce_audio_plugin_client/VST/juce_VST_Wrapper.cpp View File

@@ -235,9 +235,10 @@ static Array<void*> activePlugins;
This is an AudioEffectX object that holds and wraps our AudioProcessor...
*/
class JuceVSTWrapper : public AudioEffectX,
private Timer,
public AudioProcessorListener,
public AudioPlayHead
public AudioPlayHead,
private Timer,
private AsyncUpdater
{
public:
//==============================================================================
@@ -323,7 +324,7 @@ public:
}
}
void open()
void open() override
{
// Note: most hosts call this on the UI thread, but wavelab doesn't, so be careful in here.
if (filter->hasEditor())
@@ -332,7 +333,7 @@ public:
cEffect.flags &= ~effFlagsHasEditor;
}
void close()
void close() override
{
// Note: most hosts call this on the UI thread, but wavelab doesn't, so be careful in here.
stopTimer();
@@ -423,7 +424,7 @@ public:
return 0;
}
bool getInputProperties (VstInt32 index, VstPinProperties* properties)
bool getInputProperties (VstInt32 index, VstPinProperties* properties) override
{
if (filter == nullptr || index >= JucePlugin_MaxNumInputChannels)
return false;
@@ -433,7 +434,7 @@ public:
return true;
}
bool getOutputProperties (VstInt32 index, VstPinProperties* properties)
bool getOutputProperties (VstInt32 index, VstPinProperties* properties) override
{
if (filter == nullptr || index >= JucePlugin_MaxNumOutputChannels)
return false;
@@ -464,13 +465,13 @@ public:
}
}
bool setBypass (bool b)
bool setBypass (bool b) override
{
isBypassed = b;
return true;
}
VstInt32 getGetTailSize()
VstInt32 getGetTailSize() override
{
if (filter != nullptr)
return (VstInt32) (filter->getTailLengthSeconds() * getSampleRate());
@@ -479,7 +480,7 @@ public:
}
//==============================================================================
VstInt32 processEvents (VstEvents* events)
VstInt32 processEvents (VstEvents* events) override
{
#if JucePlugin_WantsMidiInput
VSTMidiEventList::addEventsToMidiBuffer (events, midiEvents);
@@ -508,7 +509,7 @@ public:
dest.addFrom (i, 0, processTempBuffer, i, 0, numSamples);
}
void processReplacing (float** inputs, float** outputs, VstInt32 numSamples)
void processReplacing (float** inputs, float** outputs, VstInt32 numSamples) override
{
if (firstProcessCallback)
{
@@ -641,10 +642,10 @@ public:
}
//==============================================================================
VstInt32 startProcess() { return 0; }
VstInt32 stopProcess() { return 0; }
VstInt32 startProcess() override { return 0; }
VstInt32 stopProcess() override { return 0; }
void resume()
void resume() override
{
if (filter != nullptr)
{
@@ -681,7 +682,7 @@ public:
}
}
void suspend()
void suspend() override
{
if (filter != nullptr)
{
@@ -697,7 +698,7 @@ public:
}
}
bool getCurrentPosition (AudioPlayHead::CurrentPositionInfo& info)
bool getCurrentPosition (AudioPlayHead::CurrentPositionInfo& info) override
{
const VstTimeInfo* const ti = getTimeInfo (kVstPpqPosValid | kVstTempoValid | kVstBarsValid | kVstCyclePosValid
| kVstTimeSigValid | kVstSmpteValid | kVstClockValid);
@@ -776,30 +777,30 @@ public:
}
//==============================================================================
VstInt32 getProgram()
VstInt32 getProgram() override
{
return filter != nullptr ? filter->getCurrentProgram() : 0;
}
void setProgram (VstInt32 program)
void setProgram (VstInt32 program) override
{
if (filter != nullptr)
filter->setCurrentProgram (program);
}
void setProgramName (char* name)
void setProgramName (char* name) override
{
if (filter != nullptr)
filter->changeProgramName (filter->getCurrentProgram(), name);
}
void getProgramName (char* name)
void getProgramName (char* name) override
{
if (filter != nullptr)
filter->getProgramName (filter->getCurrentProgram()).copyToUTF8 (name, 24);
}
bool getProgramNameIndexed (VstInt32 /*category*/, VstInt32 index, char* text)
bool getProgramNameIndexed (VstInt32 /*category*/, VstInt32 index, char* text) override
{
if (filter != nullptr && isPositiveAndBelow (index, filter->getNumPrograms()))
{
@@ -811,7 +812,7 @@ public:
}
//==============================================================================
float getParameter (VstInt32 index)
float getParameter (VstInt32 index) override
{
if (filter == nullptr)
return 0.0f;
@@ -820,7 +821,7 @@ public:
return filter->getParameter (index);
}
void setParameter (VstInt32 index, float value)
void setParameter (VstInt32 index, float value) override
{
if (filter != nullptr)
{
@@ -829,7 +830,7 @@ public:
}
}
void getParameterDisplay (VstInt32 index, char* text)
void getParameterDisplay (VstInt32 index, char* text) override
{
if (filter != nullptr)
{
@@ -838,7 +839,7 @@ public:
}
}
void getParameterName (VstInt32 index, char* text)
void getParameterName (VstInt32 index, char* text) override
{
if (filter != nullptr)
{
@@ -847,23 +848,28 @@ public:
}
}
void audioProcessorParameterChanged (AudioProcessor*, int index, float newValue)
void audioProcessorParameterChanged (AudioProcessor*, int index, float newValue) override
{
if (audioMaster != nullptr)
audioMaster (&cEffect, audioMasterAutomate, index, 0, 0, newValue);
}
void audioProcessorParameterChangeGestureBegin (AudioProcessor*, int index) { beginEdit (index); }
void audioProcessorParameterChangeGestureEnd (AudioProcessor*, int index) { endEdit (index); }
void audioProcessorParameterChangeGestureBegin (AudioProcessor*, int index) override { beginEdit (index); }
void audioProcessorParameterChangeGestureEnd (AudioProcessor*, int index) override { endEdit (index); }
void audioProcessorChanged (AudioProcessor*)
void audioProcessorChanged (AudioProcessor*) override
{
setInitialDelay (filter->getLatencySamples());
ioChanged();
updateDisplay();
triggerAsyncUpdate();
}
void handleAsyncUpdate() override
{
ioChanged();
}
bool canParameterBeAutomated (VstInt32 index)
bool canParameterBeAutomated (VstInt32 index) override
{
return filter != nullptr && filter->isParameterAutomatable ((int) index);
}
@@ -881,7 +887,7 @@ public:
};
bool setSpeakerArrangement (VstSpeakerArrangement* pluginInput,
VstSpeakerArrangement* pluginOutput)
VstSpeakerArrangement* pluginOutput) override
{
short channelConfigs[][2] = { JucePlugin_PreferredChannelConfigurations };
@@ -958,7 +964,7 @@ public:
}
//==============================================================================
VstInt32 getChunk (void** data, bool onlyStoreCurrentProgramData)
VstInt32 getChunk (void** data, bool onlyStoreCurrentProgramData) override
{
if (filter == nullptr)
return 0;
@@ -978,7 +984,7 @@ public:
return (VstInt32) chunkMemory.getSize();
}
VstInt32 setChunk (void* data, VstInt32 byteSize, bool onlyRestoreCurrentProgramData)
VstInt32 setChunk (void* data, VstInt32 byteSize, bool onlyRestoreCurrentProgramData) override
{
if (filter != nullptr)
{
@@ -1131,7 +1137,7 @@ public:
}
}
VstIntPtr dispatcher (VstInt32 opCode, VstInt32 index, VstIntPtr value, void* ptr, float opt)
VstIntPtr dispatcher (VstInt32 opCode, VstInt32 index, VstIntPtr value, void* ptr, float opt) override
{
if (hasShutdown)
return 0;


+ 1
- 1
libs/juce/source/modules/juce_audio_plugin_client/juce_module_info View File

@@ -1,7 +1,7 @@
{
"id": "juce_audio_plugin_client",
"name": "JUCE audio plugin wrapper classes",
"version": "3.0.6",
"version": "3.0.7",
"description": "Classes for building VST, VST3, RTAS, AAX and AU plugins.",
"website": "http://www.juce.com/juce",
"license": "GPL/Commercial",


+ 15
- 9
libs/juce/source/modules/juce_audio_processors/format_types/juce_AudioUnitPluginFormat.mm View File

@@ -972,16 +972,11 @@ private:
for (int i = 0; i < parameters.size(); ++i)
{
const ParamInfo& p = *parameters.getUnchecked(i);
AudioUnitParameter paramToAdd;
paramToAdd.mAudioUnit = audioUnit;
paramToAdd.mParameterID = p.paramID;
paramToAdd.mScope = kAudioUnitScope_Global;
paramToAdd.mElement = 0;
AudioUnitEvent event;
event.mArgument.mParameter = paramToAdd;
event.mArgument.mParameter.mAudioUnit = audioUnit;
event.mArgument.mParameter.mParameterID = parameters.getUnchecked(i)->paramID;
event.mArgument.mParameter.mScope = kAudioUnitScope_Global;
event.mArgument.mParameter.mElement = 0;
event.mEventType = kAudioUnitEvent_ParameterValueChange;
AUEventListenerAddEventType (eventListenerRef, nullptr, &event);
@@ -992,6 +987,16 @@ private:
event.mEventType = kAudioUnitEvent_EndParameterChangeGesture;
AUEventListenerAddEventType (eventListenerRef, nullptr, &event);
}
// Add a listener for program changes
AudioUnitEvent event;
event.mArgument.mProperty.mAudioUnit = audioUnit;
event.mArgument.mProperty.mPropertyID = kAudioUnitProperty_PresentPreset;
event.mArgument.mProperty.mScope = kAudioUnitScope_Global;
event.mArgument.mProperty.mElement = 0;
event.mEventType = kAudioUnitEvent_PropertyChange;
AUEventListenerAddEventType (eventListenerRef, nullptr, &event);
}
}
@@ -1022,6 +1027,7 @@ private:
break;
default:
sendAllParametersChangedEvents();
break;
}
}


+ 1
- 1
libs/juce/source/modules/juce_audio_processors/juce_module_info View File

@@ -1,7 +1,7 @@
{
"id": "juce_audio_processors",
"name": "JUCE audio plugin hosting classes",
"version": "3.0.6",
"version": "3.0.7",
"description": "Classes for loading and playing VST, AU, or internally-generated audio processors.",
"website": "http://www.juce.com/juce",
"license": "GPL/Commercial",


+ 21
- 14
libs/juce/source/modules/juce_audio_utils/gui/juce_AudioDeviceSelectorComponent.cpp View File

@@ -291,25 +291,31 @@ public:
r.removeFromTop (space);
}
r.removeFromTop (space * 2);
Rectangle<int> buttons (r.removeFromTop (h));
r.removeFromTop (space);
if (showUIButton != nullptr)
if (showUIButton != nullptr || resetDeviceButton != nullptr)
{
showUIButton->setVisible (advancedSettingsVisible);
showUIButton->changeWidthToFitText (h);
showUIButton->setBounds (buttons.removeFromLeft (showUIButton->getWidth()));
buttons.removeFromLeft (space);
}
Rectangle<int> buttons (r.removeFromTop (h));
if (resetDeviceButton != nullptr)
{
resetDeviceButton->setVisible (advancedSettingsVisible);
resetDeviceButton->changeWidthToFitText (h);
resetDeviceButton->setBounds (buttons.removeFromLeft (showUIButton->getWidth()));
if (showUIButton != nullptr)
{
showUIButton->setVisible (advancedSettingsVisible);
showUIButton->changeWidthToFitText (h);
showUIButton->setBounds (buttons.removeFromLeft (showUIButton->getWidth()));
buttons.removeFromLeft (space);
}
if (resetDeviceButton != nullptr)
{
resetDeviceButton->setVisible (advancedSettingsVisible);
resetDeviceButton->changeWidthToFitText (h);
resetDeviceButton->setBounds (buttons.removeFromLeft (resetDeviceButton->getWidth()));
}
r.removeFromTop (space);
}
setSize (getWidth(), r.getHeight());
setSize (getWidth(), r.getY());
}
else
{
@@ -488,6 +494,7 @@ public:
inputDeviceDropDown->setSelectedId (-1, dontSendNotification);
}
sendLookAndFeelChange();
resized();
setSize (getWidth(), getLowestY() + 4);
}


+ 1
- 1
libs/juce/source/modules/juce_audio_utils/juce_module_info View File

@@ -1,7 +1,7 @@
{
"id": "juce_audio_utils",
"name": "JUCE extra audio utility classes",
"version": "3.0.6",
"version": "3.0.7",
"description": "Classes for audio-related GUI and miscellaneous tasks.",
"website": "http://www.juce.com/juce",
"license": "GPL/Commercial",


+ 1
- 1
libs/juce/source/modules/juce_core/containers/juce_ReferenceCountedArray.h View File

@@ -72,7 +72,7 @@ public:
const ScopedLockType lock (other.getLock());
numUsed = other.size();
data.setAllocatedSize (numUsed);
memcpy (data.elements, other.getRawDataPointer(), numUsed * sizeof (ObjectClass*));
memcpy (data.elements, other.getRawDataPointer(), (size_t) numUsed * sizeof (ObjectClass*));
for (int i = numUsed; --i >= 0;)
if (ObjectClass* o = data.elements[i])


+ 1
- 1
libs/juce/source/modules/juce_core/javascript/juce_Javascript.cpp View File

@@ -843,7 +843,7 @@ struct JavascriptEngine::RootObject : public DynamicObject
String::CharPointerType end (p);
while (isIdentifierBody (*++end)) {}
const size_t len = end - p;
const size_t len = (size_t) (end - p);
#define JUCE_JS_COMPARE_KEYWORD(name, str) if (len == sizeof (str) - 1 && matchToken (TokenTypes::name, len)) return TokenTypes::name;
JUCE_JS_KEYWORDS (JUCE_JS_COMPARE_KEYWORD)


+ 1
- 1
libs/juce/source/modules/juce_core/juce_module_info View File

@@ -1,7 +1,7 @@
{
"id": "juce_core",
"name": "JUCE core classes",
"version": "3.0.6",
"version": "3.0.7",
"description": "The essential set of basic JUCE classes, as required by all the other JUCE modules. Includes text, container, memory, threading and i/o functionality.",
"website": "http://www.juce.com/juce",
"license": "ISC Permissive",


+ 12
- 1
libs/juce/source/modules/juce_core/native/juce_win32_Network.cpp View File

@@ -259,7 +259,8 @@ private:
{
const TCHAR* mimeTypes[] = { _T("*/*"), nullptr };
DWORD flags = INTERNET_FLAG_RELOAD | INTERNET_FLAG_NO_CACHE_WRITE | INTERNET_FLAG_NO_COOKIES;
DWORD flags = INTERNET_FLAG_RELOAD | INTERNET_FLAG_NO_CACHE_WRITE | INTERNET_FLAG_NO_COOKIES
| INTERNET_FLAG_NO_AUTO_REDIRECT | SECURITY_SET_MASK;
if (address.startsWithIgnoreCase ("https:"))
flags |= INTERNET_FLAG_SECURE; // (this flag only seems necessary if the OS is running IE6 -
@@ -270,6 +271,8 @@ private:
if (request != 0)
{
setSecurityFlags();
INTERNET_BUFFERS buffers = { 0 };
buffers.dwStructSize = sizeof (INTERNET_BUFFERS);
buffers.lpcszHeader = headers.toWideCharPointer();
@@ -313,6 +316,14 @@ private:
close();
}
void setSecurityFlags()
{
DWORD dwFlags = 0, dwBuffLen = sizeof (DWORD);
InternetQueryOption (request, INTERNET_OPTION_SECURITY_FLAGS, &dwFlags, &dwBuffLen);
dwFlags |= SECURITY_FLAG_IGNORE_UNKNOWN_CA | SECURITY_SET_MASK;
InternetSetOption (request, INTERNET_OPTION_SECURITY_FLAGS, &dwFlags, sizeof (dwFlags));
}
JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (WebInputStream)
};


+ 2
- 2
libs/juce/source/modules/juce_core/streams/juce_MemoryInputStream.cpp View File

@@ -60,7 +60,7 @@ MemoryInputStream::~MemoryInputStream()
int64 MemoryInputStream::getTotalLength()
{
return dataSize;
return (int64) dataSize;
}
int MemoryInputStream::read (void* const buffer, const int howMany)
@@ -89,7 +89,7 @@ bool MemoryInputStream::setPosition (const int64 pos)
int64 MemoryInputStream::getPosition()
{
return position;
return (int64) position;
}


+ 1
- 1
libs/juce/source/modules/juce_core/streams/juce_MemoryOutputStream.h View File

@@ -114,7 +114,7 @@ public:
void flush();
bool write (const void*, size_t) override;
int64 getPosition() override { return position; }
int64 getPosition() override { return (int64) position; }
bool setPosition (int64) override;
int writeFromInputStream (InputStream&, int64 maxNumBytesToWrite) override;
bool writeRepeatedByte (uint8 byte, size_t numTimesToRepeat) override;


+ 1
- 1
libs/juce/source/modules/juce_core/system/juce_StandardHeader.h View File

@@ -36,7 +36,7 @@
*/
#define JUCE_MAJOR_VERSION 3
#define JUCE_MINOR_VERSION 0
#define JUCE_BUILDNUMBER 6
#define JUCE_BUILDNUMBER 7
/** Current Juce version number.


+ 1
- 1
libs/juce/source/modules/juce_core/text/juce_String.cpp View File

@@ -558,7 +558,7 @@ struct HashGenerator
Type result = Type();
while (! t.isEmpty())
result = multiplier * result + t.getAndAdvance();
result = ((Type) multiplier) * result + (Type) t.getAndAdvance();
return result;
}


+ 5
- 5
libs/juce/source/modules/juce_core/zip/juce_ZipFile.cpp View File

@@ -135,7 +135,7 @@ public:
char buffer [30];
if (inputStream != nullptr
&& inputStream->setPosition (zei.streamOffset)
&& inputStream->setPosition ((int64) zei.streamOffset)
&& inputStream->read (buffer, 30) == 30
&& ByteOrder::littleEndianInt (buffer) == 0x04034b50)
{
@@ -154,7 +154,7 @@ public:
int64 getTotalLength()
{
return zipEntryHolder.compressedSize;
return (int64) zipEntryHolder.compressedSize;
}
int read (void* buffer, int howMany)
@@ -162,7 +162,7 @@ public:
if (headerSize <= 0)
return 0;
howMany = (int) jmin ((int64) howMany, (int64) (zipEntryHolder.compressedSize - pos));
howMany = (int) jmin ((int64) howMany, ((int64) zipEntryHolder.compressedSize) - pos);
if (inputStream == nullptr)
return 0;
@@ -172,12 +172,12 @@ public:
if (inputStream == file.inputStream)
{
const ScopedLock sl (file.lock);
inputStream->setPosition (pos + zipEntryHolder.streamOffset + headerSize);
inputStream->setPosition (pos + (int64) zipEntryHolder.streamOffset + headerSize);
num = inputStream->read (buffer, howMany);
}
else
{
inputStream->setPosition (pos + zipEntryHolder.streamOffset + headerSize);
inputStream->setPosition (pos + (int64) zipEntryHolder.streamOffset + headerSize);
num = inputStream->read (buffer, howMany);
}


+ 1
- 1
libs/juce/source/modules/juce_data_structures/juce_module_info View File

@@ -1,7 +1,7 @@
{
"id": "juce_data_structures",
"name": "JUCE data model helper classes",
"version": "3.0.6",
"version": "3.0.7",
"description": "Classes for undo/redo management, and smart data structures.",
"website": "http://www.juce.com/juce",
"license": "GPL/Commercial",


+ 1
- 1
libs/juce/source/modules/juce_events/juce_module_info View File

@@ -1,7 +1,7 @@
{
"id": "juce_events",
"name": "JUCE message and event handling classes",
"version": "3.0.6",
"version": "3.0.7",
"description": "Classes for running an application's main event loop and sending/receiving messages, timers, etc.",
"website": "http://www.juce.com/juce",
"license": "GPL/Commercial",


+ 1
- 1
libs/juce/source/modules/juce_graphics/juce_module_info View File

@@ -1,7 +1,7 @@
{
"id": "juce_graphics",
"name": "JUCE graphics classes",
"version": "3.0.6",
"version": "3.0.7",
"description": "Classes for 2D vector graphics, image loading/saving, font handling, etc.",
"website": "http://www.juce.com/juce",
"license": "GPL/Commercial",


+ 1
- 1
libs/juce/source/modules/juce_gui_basics/juce_module_info View File

@@ -1,7 +1,7 @@
{
"id": "juce_gui_basics",
"name": "JUCE GUI core classes",
"version": "3.0.6",
"version": "3.0.7",
"description": "Basic user-interface components and related classes.",
"website": "http://www.juce.com/juce",
"license": "GPL/Commercial",


+ 2
- 2
libs/juce/source/modules/juce_gui_basics/mouse/juce_MouseInputSource.cpp View File

@@ -487,8 +487,8 @@ private:
bool canBePartOfMultipleClickWith (const RecentMouseDown& other, const int maxTimeBetweenMs) const
{
return time - other.time < RelativeTime::milliseconds (maxTimeBetweenMs)
&& abs (position.x - other.position.x) < 8
&& abs (position.y - other.position.y) < 8
&& std::abs (position.x - other.position.x) < 8
&& std::abs (position.y - other.position.y) < 8
&& buttons == other.buttons
&& peerID == other.peerID;
}


+ 1
- 1
libs/juce/source/modules/juce_gui_basics/native/juce_mac_NSViewComponentPeer.mm View File

@@ -1013,7 +1013,7 @@ public:
static Point<float> getMousePos (NSEvent* e, NSView* view)
{
NSPoint p = [view convertPoint: [e locationInWindow] fromView: nil];
return Point<float> (p.x, [view frame].size.height - p.y);
return Point<float> ((float) p.x, (float) ([view frame].size.height - p.y));
}
static int getModifierForButtonNumber (const NSInteger num)


+ 1
- 1
libs/juce/source/modules/juce_gui_basics/native/juce_mac_Windowing.mm View File

@@ -214,7 +214,7 @@ Point<float> MouseInputSource::getCurrentRawMousePosition()
JUCE_AUTORELEASEPOOL
{
const NSPoint p ([NSEvent mouseLocation]);
return Point<float> (p.x, getMainScreenHeight() - p.y);
return Point<float> ((float) p.x, (float) (getMainScreenHeight() - p.y));
}
}


+ 7
- 7
libs/juce/source/modules/juce_gui_basics/widgets/juce_Slider.cpp View File

@@ -667,7 +667,7 @@ public:
if (isTwoValue || isThreeValue)
{
const float mousePos = (float) (isVertical() ? e.y : e.x);
const float mousePos = isVertical() ? e.position.y : e.position.x;
const float normalPosDistance = std::abs (getLinearSliderPos (currentValue.getValue()) - mousePos);
const float minPosDistance = std::abs (getLinearSliderPos (valueMin.getValue()) - 0.1f - mousePos);
@@ -689,10 +689,10 @@ public:
//==============================================================================
void handleRotaryDrag (const MouseEvent& e)
{
const int dx = e.x - sliderRect.getCentreX();
const int dy = e.y - sliderRect.getCentreY();
const float dx = e.position.x - sliderRect.getCentreX();
const float dy = e.position.y - sliderRect.getCentreY();
if (dx * dx + dy * dy > 25)
if (dx * dx + dy * dy > 25.0f)
{
double angle = std::atan2 ((double) dx, (double) -dy);
while (angle < 0.0)
@@ -736,7 +736,7 @@ public:
void handleAbsoluteDrag (const MouseEvent& e)
{
const int mousePos = (isHorizontal() || style == RotaryHorizontalDrag) ? e.x : e.y;
const float mousePos = (isHorizontal() || style == RotaryHorizontalDrag) ? e.position.x : e.position.y;
double newPos = (mousePos - sliderRegionStart) / (double) sliderRegionSize;
if (style == RotaryHorizontalDrag
@@ -781,7 +781,7 @@ public:
void handleVelocityDrag (const MouseEvent& e)
{
const float mouseDiff = style == RotaryHorizontalVerticalDrag
? (e.x - mousePosWhenLastDragged.x) + (mousePosWhenLastDragged.y - e.y)
? (e.position.x - mousePosWhenLastDragged.x) + (mousePosWhenLastDragged.y - e.position.y)
: (isHorizontal()
|| style == RotaryHorizontalDrag
|| (style == IncDecButtons && incDecDragDirectionIsHorizontal()))
@@ -789,7 +789,7 @@ public:
: e.position.y - mousePosWhenLastDragged.y;
const double maxSpeed = jmax (200, sliderRegionSize);
double speed = jlimit (0.0, maxSpeed, (double) abs (mouseDiff));
double speed = jlimit (0.0, maxSpeed, (double) std::abs (mouseDiff));
if (speed != 0)
{


+ 1
- 1
libs/juce/source/modules/juce_gui_extra/juce_module_info View File

@@ -1,7 +1,7 @@
{
"id": "juce_gui_extra",
"name": "JUCE extended GUI classes",
"version": "3.0.6",
"version": "3.0.7",
"description": "Miscellaneous GUI classes for specialised tasks.",
"website": "http://www.juce.com/juce",
"license": "GPL/Commercial",


+ 1
- 1
libs/juce/source/modules/juce_gui_extra/misc/juce_LiveConstantEditor.cpp View File

@@ -381,7 +381,7 @@ struct ColourEditorComp : public Component,
Colour getColour() const
{
return Colour ((int) parseInt (editor.value.getStringValue (false)));
return Colour ((uint32) parseInt (editor.value.getStringValue (false)));
}
void paint (Graphics& g) override


+ 1
- 1
libs/juce/source/modules/juce_gui_extra/misc/juce_LiveConstantEditor.h View File

@@ -53,7 +53,7 @@ namespace LiveConstantEditor
inline void setFromString (double& v, const String& s) { v = parseDouble (s); }
inline void setFromString (float& v, const String& s) { v = (float) parseDouble (s); }
inline void setFromString (String& v, const String& s) { v = s; }
inline void setFromString (Colour& v, const String& s) { v = Colour ((int) parseInt (s)); }
inline void setFromString (Colour& v, const String& s) { v = Colour ((uint32) parseInt (s)); }
template <typename Type>
inline String getAsString (const Type& v, bool) { return String (v); }


Loading…
Cancel
Save