X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/3c99e2fd1b3432974b892be508c0757da5b6ad49..575821fad84c6f60602ffce6f8f6e727247ce651:/interface/wx/msgqueue.h diff --git a/interface/wx/msgqueue.h b/interface/wx/msgqueue.h index 3c3432f8a2..376625a3f0 100644 --- a/interface/wx/msgqueue.h +++ b/interface/wx/msgqueue.h @@ -1,11 +1,35 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: msgqueue.h +// Name: wx/msgqueue.h // Purpose: interface of wxMessageQueue // Author: wxWidgets team // RCS-ID: $Id$ -// Licence: wxWindows license +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// +/** + Error codes for wxMessageQueue<> operations. + + This enum contains the possible return value of wxMessageQueue<> methods. + + @since 2.9.0 + @category{threading} + */ +enum wxMessageQueueError +{ + /// Indicates that the operation completed successfully. + wxMSGQUEUE_NO_ERROR = 0, + + /** + Indicates that no messages were received before timeout expired. + + This return value is only used by wxMessageQueue<>::ReceiveTimeout(). + */ + wxMSGQUEUE_TIMEOUT, + + /// Some unexpected (and fatal) error has occurred. + wxMSGQUEUE_MISC_ERROR +}; + /** wxMessageQueue allows passing messages between threads. @@ -20,6 +44,8 @@ should terminate as there is no other way to gracefully shutdown a thread waiting on the message queue. + @since 2.9.0 + @nolibrary @category{threading} @@ -35,6 +61,17 @@ public: */ wxMessageQueue(); + /** + 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. + + @since 2.9.1 + */ + wxMessageQueueError Clear(); + /** Returns @true if the object had been initialized successfully, @false if an error occurred.