Mercurial > projects > hoofbaby
diff deps/Platinum/ThirdParty/Neptune/Source/System/Win32/NptWin32MessageQueue.h @ 0:3425707ddbf6
Initial import (hopefully this mercurial stuff works...)
author | fraserofthenight |
---|---|
date | Mon, 06 Jul 2009 08:06:28 -0700 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/deps/Platinum/ThirdParty/Neptune/Source/System/Win32/NptWin32MessageQueue.h Mon Jul 06 08:06:28 2009 -0700 @@ -0,0 +1,49 @@ +/***************************************************************** +| +| Neptune - Win32 Message Queue +| +| (c) 2001-2008 Gilles Boccon-Gibod +| Author: Gilles Boccon-Gibod (bok@bok.net) +| +****************************************************************/ + +#ifndef _NPT_WIN32_MESSAGE_QUEUE_ +#define _NPT_WIN32_MESSAGE_QUEUE_ + +/*---------------------------------------------------------------------- +| includes ++---------------------------------------------------------------------*/ +#include <windows.h> +#include <TCHAR.h> +#include "NptStrings.h" +#include "NptMessaging.h" +#include "NptSimpleMessageQueue.h" + +/*---------------------------------------------------------------------- +| NPT_Win32MessageQueue ++---------------------------------------------------------------------*/ +class NPT_Win32WindowMessageQueue : public NPT_MessageQueue +{ +public: + NPT_Win32WindowMessageQueue(); + ~NPT_Win32WindowMessageQueue(); + + // NPT_MessageQueue methods + virtual NPT_Result PumpMessage(NPT_Timeout timeout = NPT_TIMEOUT_INFINITE); + virtual NPT_Result QueueMessage(NPT_Message* message, + NPT_MessageHandler* handler); + + NPT_Result HandleMessage(NPT_Message* message, NPT_MessageHandler* handler); + +private: + static LRESULT CALLBACK WindowProcedure(HWND window, + UINT message, + WPARAM wparam, + LPARAM lparam); + HWND m_WindowHandle; + TCHAR m_ClassName[16]; + HINSTANCE m_hInstance; +}; + +#endif // _NPT_WIN32_MESSAGE_QUEUE_ +