98 void setValue (
const var& newValue);
124 bool refersToSameSourceAs (
const Value&
other)
const;
168 void addListener (
Listener* listener);
171 void removeListener (
Listener* listener);
211 void handleAsyncUpdate()
override;
213 JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (
ValueSource)
227 friend class ValueSource;
231 void callListeners();
232 void removeFromListenerList();
240 explicit Value (
void*) =
delete;
244OutputStream& JUCE_CALLTYPE operator<< (OutputStream&,
const Value&);
Holds a resizable array of primitive or copy-by-value objects.
Has a callback method that is triggered asynchronously.
A base class which provides methods for reference-counting.
Receives callbacks when a Value object changes.
virtual void valueChanged(Value &value)=0
Called when a Value object is changed.
Used internally by the Value class as the base class for its shared value objects.
virtual var getValue() const =0
Returns the current value of this object.
virtual void setValue(const var &newValue)=0
Changes the current value.
Represents a shared variant value.
ValueSource & getValueSource() noexcept
Returns the ValueSource that this value is referring to.
A variant class, that can be used to hold a range of primitive values.
#define JUCE_API
This macro is added to all JUCE public class declarations.