You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

63 lines
1.7 KiB
C++

#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