mirror of
https://github.com/juce-framework/JUCE.git
synced 2026-02-03 03:30:06 +00:00
Added ListenerList class and changed some components to use it for their listener dispatching. Sorted out bug in popup menus and win32 mouse wheel.
This commit is contained in:
parent
b974203d0f
commit
2676bb02f2
42 changed files with 1815 additions and 1867 deletions
|
|
@ -200,7 +200,7 @@ void Value::addListener (Listener* const listener)
|
|||
|
||||
void Value::removeListener (Listener* const listener)
|
||||
{
|
||||
listeners.removeValue (listener);
|
||||
listeners.remove (listener);
|
||||
|
||||
if (listeners.size() == 0)
|
||||
value->valuesWithListeners.removeValue (this);
|
||||
|
|
@ -208,15 +208,9 @@ void Value::removeListener (Listener* const listener)
|
|||
|
||||
void Value::callListeners()
|
||||
{
|
||||
Value valueCopy (*this); // Use a copy in case this object gets deleted by a callback
|
||||
|
||||
for (int i = listeners.size(); --i >= 0;)
|
||||
{
|
||||
Listener* const l = listeners[i];
|
||||
|
||||
if (l != 0)
|
||||
l->valueChanged (valueCopy);
|
||||
}
|
||||
Value v (*this); // (create a copy in case this gets deleted by a callback)
|
||||
listeners.call (&Listener::valueChanged, v);
|
||||
}
|
||||
|
||||
|
||||
END_JUCE_NAMESPACE
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue