#pragma once #include "akGraph/akGraphBase.h" #include "akGraph/akDataBasic1.h" #include "akGraph/akColorSettingDlg.h" #include class AFX_EXT_CLASS CakGraphCodeJ : public CakGraphBase, public CakDataBasic1 { public: public: CakGraphCodeJ(void); virtual ~CakGraphCodeJ(void); public: virtual void RenderBegin( CDC* pDC, CRect rectDC ); virtual BOOL CreateGraph(CWnd* pParent, CRect rect); virtual void RenderDataArea(Graphics* grfx, CDC* pDC); //µ¥ÀÌÅÍ ¿µ¿ª ±×¸®±â virtual void RenderAxis(Graphics* grfx, CDC* pDC); // virtual void RenderLabel(Graphics* grfx, CDC* pDC); // virtual void RenderTitle(Graphics* grfx, CDC* pDC); virtual void RenderEnd(Graphics* grfx, CDC* pDC); virtual void OnKeyInput(int key, int mode); //mode 0==keyup, mode 1==keydown virtual void OnMouseInput(akMouseEvent mouseevent, CPoint point); virtual void MouseInput(CakMouseState mousestate); inline int GetWindowPosX(double xvalue); //À§Ä¡ °ª¿¡ µû¸¥ À©µµ¿ì ÁÂÇ¥ inline int GetWindowPosY(double yvalue); //À§Ä¡ °ª¿¡ µû¸¥ À©µµ¿ì ÁÂÇ¥ inline double GetValuePosDataX(int xpos, bool dataArea = false); //À©µµ¿ì ÁÂÇ¥¿¡ µû¸¥ µ¥ÀÌÅÍ inline double GetValuePosDataY(int ypos, bool dataArea = false); //À©µµ¿ì ÁÂÇ¥¿¡ µû¸¥ µ¥ÀÌÅÍ virtual void SetAutoScale(); virtual void SetDataNum(int datanum); virtual void ReDraw(bool bReDrawALL); void SetHorMode(bool bFlag = true); //°¡·Î ¸ðµå void SetCalculatorAvr();//°ªµéÀÇ Æò±ÕÀ» È­¸é¿¡ Ç¥½Ã CString m_strAVR; void SetAutoBarScale(int margin); int m_nBarGab; //¸·´ë ±×·¡ÇÁ »çÀÌÀÇ °£°Ý void SetFullScreen(bool flag); void SetFullMode(bool flag, int x, int y, int width, int height); //Ç® ¸ðµå Ű°í ²û.. ±×¸®°í Ç®¸ðµå ½ÎÀÌÁî void GraphType(int nType); bool GetValuebyMousePos(int mousex, int mousey, int* index, double* val); private: protected: bool m_bGrid; CakColorSettingDlg* m_pColorSettingDlg; public: bool m_bIntegerAxisX; bool m_bIntegerAxisY; bool m_bAVR;//È­¸é¿¡ Æò±Õ°ª Ç¥½Ã ÇÒ °ÍÀÎÁö¿¡ ´ëÇÑ Ç÷¹±× std::vector m_vecProbabilityData; //ÀÌ»óÀÌÇÏÈ®·ü°è»êµ¥ÀÌÅÍ int m_nBarWidth; CakRect m_rectFullMode; CakRect m_rectNormalMode; int m_nGraphType; //0Àº ¹ÙŸÀÔ ¼± ŸÀÔ ¸ðµÎ Ç¥Çö, 1Àº ¹ÙŸÀÔ¸¸ Ç¥Çö int m_nTextValueShowLevel; //±×·¡ÇÁ À§¿¡ ÅØ½ºÆ®·Î °ª Ç¥½Ã(-1Àº Ç¥½Ã ¾ÈÇÔ 0¿¡¼­ 3±îÁö ¼Ò¼ö ÀÚ¸®¼ö Ç¥Çö) CString* m_strAxisXText; COLORREF* m_clrAxisXColor; double m_avr; protected: double m_nTimeline; bool m_bFullScreen; bool m_bFullMode; bool m_bHorMode; public: DECLARE_MESSAGE_MAP() afx_msg void OnDestroy(); LRESULT OnColorSettingUpdate(WPARAM wParam, LPARAM lParam); };