8 {
9
10UINumberField::UINumberField(
const char *name,
double value,
double min,
double max)
FL_NOEXCEPT
11 : mImpl(name, value,
min,
max), mListener(
this), mLastFrameValue(0), mLastFrameValueValid(
false) {
12 mListener.addToEngineEventsOnce();
13}
14
16
17void UINumberField::Listener::onBeginFrame()
FL_NOEXCEPT {
18 UINumberField &owner = *mOwner;
19 if (!owner.mLastFrameValueValid) {
20 owner.mLastFrameValue = owner.value();
21 owner.mLastFrameValueValid = true;
22 return;
23 }
24 double value = owner.value();
25 if (value != owner.mLastFrameValue) {
26 owner.mCallbacks.invoke(owner);
27 owner.mLastFrameValue = value;
28 }
29}
30
31}
FL_DISABLE_WARNING_PUSH U constexpr common_type_t< T, U > min(T a, U b) FL_NOEXCEPT
Memory functions are available in fl:: namespace via fl/stl/cstring.h Using declarations cannot work ...
constexpr common_type_t< T, U > max(T a, U b) FL_NOEXCEPT