36 return ScopedMessageBox (runAsync (std::move (native), std::move (callback)));
47 nativeImplementation->close();
56 result->self = result;
57 result->triggerAsyncUpdate();
63 : callback (std::move (c)), nativeImplementation (std::move (p)) {}
65 void handleAsyncUpdate()
override
73 NullCheckedInvocation::invoke (locked->callback, result, error);
Has a callback method that is triggered asynchronously.
void cancelPendingUpdate() noexcept
This will stop any pending updates from happening.
static bool callAsync(std::function< void()> functionToCall)
Asynchronously invokes a function or C++11 lambda on the message thread.
static MessageManager * getInstance()
Returns the global instance of the MessageManager.
Objects of this type can be used to programmatically close message boxes.
Type unalignedPointerCast(void *ptr) noexcept
Casts a pointer to another type via void*, which suppresses the cast-align warning which sometimes ar...