1
0
Fork 0
mirror of https://github.com/juce-framework/JUCE.git synced 2026-02-08 04:20:09 +00:00

TextEditor and Colour fixes.

This commit is contained in:
Julian Storer 2011-02-01 14:58:40 +00:00
parent 3bacbe2a8c
commit 413e00631b
14 changed files with 683 additions and 249 deletions

View file

@ -795,34 +795,21 @@ void AudioDeviceManager::addMidiInputCallback (const String& name,
{
removeMidiInputCallback (name, callbackToAdd);
if (name.isEmpty())
if (name.isEmpty() || isMidiInputEnabled (name))
{
const ScopedLock sl (midiCallbackLock);
midiCallbacks.add (callbackToAdd);
midiCallbackDevices.add (String::empty);
}
else
{
for (int i = enabledMidiInputs.size(); --i >= 0;)
{
if (enabledMidiInputs[i]->getName() == name)
{
const ScopedLock sl (midiCallbackLock);
midiCallbacks.add (callbackToAdd);
midiCallbackDevices.add (enabledMidiInputs[i]->getName());
break;
}
}
midiCallbackDevices.add (name);
}
}
void AudioDeviceManager::removeMidiInputCallback (const String& name, MidiInputCallback* /*callback*/)
void AudioDeviceManager::removeMidiInputCallback (const String& name, MidiInputCallback* callback)
{
const ScopedLock sl (midiCallbackLock);
for (int i = midiCallbacks.size(); --i >= 0;)
{
if (midiCallbackDevices[i] == name)
if (midiCallbackDevices[i] == name && midiCallbacks.getUnchecked(i) == callback)
{
const ScopedLock sl (midiCallbackLock);
midiCallbacks.remove (i);
midiCallbackDevices.remove (i);
}