#ifndef MWSECTIONRULER_H #define MWSECTIONRULER_H #pragma once ////////////////////////////////////////////////////////////////////////////// //文件 Ruler.h //主要功能: // 海拔标尺类 ///////////////////////////////////////////////////////////////////////////// class AFX_EXT_CLASS CMWSectionRuler : public CInTrackDepthSegment { public: CMWSectionRuler(void); ~CMWSectionRuler(void); public: CString m_title_name; // 标题名 double m_MajorMark; // 主刻度 int m_nMinorMark; // 次刻度数 GDFLOGFONTEXT m_fontMark; // 刻度标字体 protected: DWORD m_nRulerFlags; // 断层开关状态 // 连层类Flags enum RulerFlags { FlagNULL = 0x0000, // 空白 RulerFlagDrawFrame = 0x0001, // 是否画边框 RulerFlagMajorMark = 0x0002, // 是否画主刻度 RulerFlagMinorMark = 0x0004, // 是否画次刻度 RulerFlagLeftMark = 0x0008, // 刻度居左 RulerFlagTransparence = 0x0010, // 是否透明 RulerFlagHideTitle = 0x0020 // 是否画标题 }; public: virtual void MoveTo(CRect8& position); virtual void Serialize(CArchive& ar, const short &ver); virtual int HitTest(CPoint2D point, double dHandleSize, BOOL bSelected); virtual void Draw(CXyDC* pDC); void DrawMark(CXyDC* pDC); //画深度格子 //开关变量值 virtual void SetRulerFlags(DWORD flags); virtual void SetDrawFrame(BOOL bFlag); virtual void SetMajorMark(BOOL bFlag); virtual void SetMinorMark(BOOL bFlag); virtual void SetTransparence(BOOL bFlag); virtual void SetLeftMark(BOOL bFlag); virtual void SetHideTitle(BOOL bFlag); virtual DWORD GetRulerFlags(); virtual BOOL IsDrawFrame(); virtual BOOL IsMajorMark(); virtual BOOL IsMinorMark(); virtual BOOL IsTransparence(); virtual BOOL IsLeftMark(); virtual BOOL IsHideTitle(); }; #endif