///////////////////////////////////////////////////////////////////// #pragma once #include "CommonDefines.h" class CGDFObject; class CGDFMap; class CGDFLayer : public CObject { public: DECLARE_SERIAL(CGDFLayer) CGDFLayer(CGDFMap* pMap=NULL); ~CGDFLayer(); //Attributes private: CTypedPtrArray m_objectarray; CString m_strName; CString m_strTypeName; BOOL m_bVisible; BOOL m_bEditable; //UINT m_editflag; CTypedPtrArray m_selectedarray; CGDFMap* m_pMap; CRect m_drawrect; CRect8 m_maprect; double m_dZoomFactor; BYTE m_smooth; BOOL m_bModifyFlag; GDFLOGPEN m_logpen; GDFLOGBRUSH m_logbrush; GDFLOGFONT m_logfont; GDFLOGPOINT m_logpoint; CString m_strDefaultTypeName; CString m_strDefaultName; BOOL m_bLineClose; CPoint m_firstpoint; CPoint m_oldpoint; CSize m_movesize; ULONGLONG m_ullTimeStamp; //Operations public: void BuildMapRect(); CString GetName(); void SetName(LPCTSTR str); void AddObject(CGDFObject* pObject); void InsertObject(int index,CGDFObject* pObject); void AddObject(CTypedPtrArray& ObjectArray); void InsertObject(int index,CTypedPtrArray& ObjectArray); void Clear(); void DeleteAllObject(); void SetSmooth(BYTE byteValue); BYTE GetSmooth(); CGDFMap* GetMap(); int GetObjectCount(); CGDFObject* GetObjectG(int index); CGDFObject* GetObjectG(LPCTSTR strName); CGDFObject* GetObjectG(LPCTSTR strName,LPCTSTR strTypeName); };