2009-02-11 09:24:56 +00:00
|
|
|
#include "Global.h"
|
|
|
|
|
2009-04-19 23:04:21 +00:00
|
|
|
#define EATPROC_NO_UPDATE_WHILE_UPDATING_DEVICES 1
|
|
|
|
|
2009-02-11 09:24:56 +00:00
|
|
|
/* Need this to let window be subclassed multiple times but still clean up nicely.
|
|
|
|
*/
|
|
|
|
enum ExtraWndProcResult {
|
|
|
|
CONTINUE_BLISSFULLY,
|
|
|
|
// Calls ReleaseExtraProc without messing up order.
|
|
|
|
CONTINUE_BLISSFULLY_AND_RELEASE_PROC,
|
|
|
|
USE_DEFAULT_WND_PROC,
|
|
|
|
NO_WND_PROC
|
|
|
|
};
|
|
|
|
|
|
|
|
typedef ExtraWndProcResult (*ExtraWndProc)(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam, LRESULT *out);
|
2009-04-19 23:04:21 +00:00
|
|
|
int EatWndProc(HWND hWnd, ExtraWndProc proc, DWORD flags);
|
2009-02-11 09:24:56 +00:00
|
|
|
|
|
|
|
void ReleaseExtraProc(ExtraWndProc proc);
|
|
|
|
void ReleaseEatenProc();
|
|
|
|
|