#pragma once #include "common.h" #include "T2HaveOutViewObject.h" enum { kOutObjStatus0 = 0, kOutObjStatus1 }; class AFX_CLASS_EXPORT T2OutObj : public T2HaveOutViewObject { public: T2OutObj(); virtual ~T2OutObj(); virtual unsigned int Idle(T2TowerDoc*); virtual void LoadSelf(T2Archive&, T2TowerDoc*); virtual void SaveSelf(T2Archive&); virtual T2InfoDialog* ShowInfoDialog(T2TowerDoc*); virtual void DrawHitMask(T2TowerDoc*); virtual int InitOutObj(T2OuterObjDef* def, const RECT& outObjArea, unsigned int valiation); virtual void StartBuild(T2TowerDoc*); virtual PROCCODE Destruct(T2TowerDoc*, RECT&); virtual PROCCODE DoDestruct(T2TowerDoc*, int, CPoint, CPoint, CRect&); virtual void GetOutObjArea(RECT&) const; virtual void Draw(T2TowerDoc*, const CRect&); T2ToolDef* GetToolDef() const { return mToolDef; } void SetToolDef(T2ToolDef* def) { mToolDef = def; } protected: friend class T2OuterObjDef; friend class T2OutObjArray; friend class T2OutObjInfoDialog; friend class T2TowerDoc; unsigned int mID; RECT mOutObjArea; int mToolType; int _38; RECT _3C; int _4C; };