#ifndef _PROTO_MAIN_HPP_ #define _PROTO_MAIN_HPP_ #ifndef _COMMON_WINDOWS_HPP_ #include #endif class Main { public: static HINSTANCE processInstance(HWND hWnd); static HINSTANCE processInstance(void); static HINSTANCE previousProcessInstance(void); static void processInstance(HINSTANCE processInstance); static void previousProcessInstance(HINSTANCE previousProcessInstance); static void cmdShow(int nCmdShow); private: static HINSTANCE smhInstance; static HINSTANCE smhPrevInstance; static int smnCmdShow; }; inline void Main::processInstance(HINSTANCE hProcessInstance) { smhInstance=hProcessInstance; } inline void Main::previousProcessInstance(HINSTANCE previousProcessInstance) { smhPrevInstance=previousProcessInstance; } inline void Main::cmdShow(int nCmdShow) { } inline HINSTANCE Main::processInstance(void) { return smhInstance; } inline HINSTANCE Main::previousProcessInstance(void) { return smhPrevInstance; } #if defined(__FLAT__) inline HINSTANCE Main::processInstance(HWND hWnd) { return (HINSTANCE)::GetWindowLong(hWnd,GWL_HINSTANCE); } #else inline HINSTANCE Main::processInstance(HWND hWnd) { return (HINSTANCE)::GetWindowWord(hWnd,GWW_HINSTANCE); } #endif #define WM_REACTIVATE WM_USER+1 #endif