#pragma once #include class HTrackerTransform; class SelectedItemMotionGraphDrawer; class TransformMotiveGraphDrawer { public: TransformMotiveGraphDrawer(); void SetBoundRect(CRect & rect); void SetSIMGDrawer(SelectedItemMotionGraphDrawer * drawer); void CopyMatrix(Gdiplus::Matrix * matrix); virtual void FirstDraw(CDC * pDC, Gdiplus::Matrix * matrix, int mouseX, int mouseY); virtual void Draw(CDC * pDC, Gdiplus::Matrix * matrix, int mouseX, int mouseY); virtual void LButtonDown(int mouseX, int mouseY); virtual void Erease(CDC * pDC); protected: void DrawBoundShape(CDC * pDC); void TranslateBoundRect(); protected: SelectedItemMotionGraphDrawer * m_pSIMGDrawer; HTrackerTransform * m_trackerTransform; Gdiplus::Matrix * m_matrix; CRect m_boundRect; POINT m_boundPoints[4]; COLORREF m_boundColor; };