X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/855b9ce0001bf131c3b17b00593bfe0da0fb3d6b..58ce18f2fdadecffb21e27555115af708325cf18:/include/wx/msgqueue.h diff --git a/include/wx/msgqueue.h b/include/wx/msgqueue.h index eaf64c05ae..03d9f587c9 100644 --- a/include/wx/msgqueue.h +++ b/include/wx/msgqueue.h @@ -72,6 +72,22 @@ public: return wxMSGQUEUE_NO_ERROR; } + // Remove all messages from the queue. + // + // This method is meant to be called from the same thread(s) that call + // Post() to discard any still pending requests if they became unnecessary. + wxMessageQueueError Clear() + { + wxCHECK( IsOk(), wxMSGQUEUE_MISC_ERROR ); + + wxMutexLocker locker(m_mutex); + + std::queue empty; + std::swap(m_messages, empty); + + return wxMSGQUEUE_NO_ERROR; + } + // Wait no more than timeout milliseconds until a message becomes available. // // Setting timeout to 0 is equivalent to an infinite timeout. See Receive().