#pragma once #include /****************************************************************************** The abstraction for a windowed drawing application. ******************************************************************************/ class KEngine : public KWindow, public KDirectDrawOverlay { #ifdef KDEBUG KException::KWinException e_win; #endif HINSTANCE m_hInst; bool m_focus_past, m_focus_present; void OnKeyDown(WPARAM wParam, LPARAM lParam); LRESULT WndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam); void HookReportHandler(UINT msg, WPARAM wParam, LPARAM lParam); void GetWndClassEx(WNDCLASSEX & wc); void SetWinRect( void ); void Render(void); bool TimeToDie(void); public: KEngine(); KEngine(HINSTANCE hInst, HWND target_window, DWORD pid); ~KEngine(); WPARAM MessageLoop(void); HWND GetEngineWindowHandle(void); RECT m_win_rect; HWND m_target_window; DWORD m_target_pid; void InitScene(void); //struct Squares //{ // float x; // float y; // DWORD c; // int plane; // int size; //}; //enum //{ // NUM_OF_SQUARES = 100 //}; //Squares * sq; RECT m_dest_rect, m_src_rect; };