#pragma once #ifndef ChartObjectProxy_h__ #define ChartObjectProxy_h__ #include "ChartBaseObject.h" #include "ChartConcrete.h" namespace NChart { class CChartBaseObject; class CChartDataSet; class AFX_EXT_CLASS CChartObjectProxy : public CChartBaseObject { public: CChartObjectProxy(void); virtual ~CChartObjectProxy(void); virtual void SetChartType(CHARTTYPE type); virtual CHARTTYPE GetChartType(); virtual void SetDataFilePath(CString dataFilePath); virtual void SetRect(const CRect8& rcClient); virtual CRect8 GetRect(); virtual CChartDataSet *GetDataSet(); virtual void SetDataSet(CChartDataSet * pDataSet); virtual void SetPlotBackgroundColor(COLORREF color); virtual COLORREF GetPlotBackgroundColor(); virtual void SetChartBackgroundColor(COLORREF color); virtual COLORREF GetChartBackgroundColor(); virtual void SetAlpha(int alpha); virtual int GetAlpha(); virtual bool GetShowVGridLine(); virtual void SetShowVGridLine(bool val); virtual bool GetShowHGridLine(); virtual void SetShowHGridLine(bool val); NGraph::GDFLOGFONT GetPlotFont() const ; void SetPlotFont(NGraph::GDFLOGFONT font) ; virtual void Serialize(CArchive& ar, const short &ver); virtual int Read(CFile& fr, const short& ver); virtual void Write(CFile& fw, const short& ver); CString GetObjectName(); void SetObjectName(CString objName); virtual CDrawingObject* HitTest(const CPoint2D& ptHit); virtual void Accept(CChartAbstractVisitor *pVisitor); virtual void Draw(CXyDC &dc); protected: CChartConcrete * m_pObject; void CreateObject(CHARTTYPE type); CHARTTYPE m_eType; }; }//namesapce using namespace NChart; #endif // ChartObjectProxy_h__