CMessageLoopDefaultImpl Class
class CMessageLoopDefaultImpl
This class provides a default implementation for an application's message loop. The general structure for most applications is to create a main window, run the message loop (via GetMessage/DispatchMessage) and finally destroy the main window when the WM_QUIT message is received). CCreateWindowMessageLoop fills in the two virtual functions for managing the window: by deriving from a message loop-derived class (CMessageLoopBase by default)CMessageLoopDefaultImpl is capable of managing several message pre-translators and idle handlers. You add message pre-translators and idle handlers to the message loop using AddMessagePreTranslator and AddIdleHandler. CCreateWindowMessageLoop runs the message loop by calling the pretranslators and the idle handlers registered with the message loop.
Member functions include: AddMessagePreTranslator, RemoveMessagePreTranslator, AddIdleHandler, RemoveIdleHandler, PreTranslateMessage, OnIdle
Defined in: Application.h
Class Template Arguments
_Base = CMessageLoopBase
Base class
Class Members
IdleHandlersList m_lstIdleHandlers
List of idle handlers
MessagePreTranslatorsList m_lstMessagePreTranslators
List of message translators
void AddMessagePreTranslator(IMessagePreTranslator* pMsgTrans)
Add a message translator to the loop
void RemoveMessagePreTranslator(IMessagePreTranslator* pMsgTrans)
Remove a message translator from the loop
void AddIdleHandler(IIdleHandler* pIdleHandler)
Add an idle handler to the loop
void RemoveIdleHandler(IIdleHandler* pIdleHandler)
Remove an idle handler from the loop
virtual bool PreTranslateMessage( MSG* pMsg )
Override message pre-translation
virtual bool OnIdle( int )
Override idle handling