#include "T2MWControl.h" #include "T2TowerDoc.h" #include "T2WorldDef.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif #line 19 IMPLEMENT_DYNCREATE(T2MWControl, CWnd) T2MWControl::T2MWControl() { mDocument = NULL; mWorldDef = NULL; mData = 0; } /*virtual*/ T2MWControl::~T2MWControl() { } BEGIN_MESSAGE_MAP(T2MWControl, CWnd) ON_WM_ERASEBKGND() ON_WM_QUERYNEWPALETTE() ON_WM_LBUTTONDOWN() ON_WM_LBUTTONUP() ON_WM_MOUSEMOVE() END_MESSAGE_MAP() /*virtual*/ void T2MWControl::Setup(T2TowerDoc *inDoc) { mDocument = inDoc; mWorldDef = inDoc->mWorldDef; InvalidateRect(NULL); } afx_msg BOOL T2MWControl::OnEraseBkgnd(CDC* pDC) { if (!mWorldDef) return true; mWorldDef->DrawCtrl(mDocument, this); return true; } afx_msg BOOL T2MWControl::OnQueryNewPalette() { return CWnd::OnQueryNewPalette(); } /*virtual*/ void T2MWControl::SetData(int data) { mData = data; InvalidateRect(NULL); } /*virtual*/ int T2MWControl::GetData() const { return mData; } afx_msg void T2MWControl::OnLButtonDown(UINT nFlags, CPoint point) { if (mWorldDef) mWorldDef->ButtonDownOnCtrl(mDocument, this, point, GetParent()); } afx_msg void T2MWControl::OnLButtonUp(UINT nFlags, CPoint point) { if (mWorldDef) mWorldDef->ButtonUpOnCtrl(mDocument, this, point, GetParent()); } afx_msg void T2MWControl::OnMouseMove(UINT nFlags, CPoint point) { if (mWorldDef) { CWinApp *theApp = AfxGetApp(); HCURSOR cursor = theApp->LoadStandardCursor(IDC_ARROW); if (cursor) SetCursor(cursor); mWorldDef->MouseMoveOnCtrl(mDocument, this, point, GetParent()); } }