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.

100 lines
2.4 KiB
C++

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

//////////////////////////////////////////////////////////////////////////////
//文件 PointCrossName.h
//主要功能:
// 显示四个点,中间的符号使用修饰完成
//
//程序编写: 2005-12-07
/////////////////////////////////////////////////////////////////////////////
#pragma once
#include "pointnameex.h"
//
// P1
// ---+---- 中心点坐标x,y)
// P2
//
class AFX_EXT_CLASS CPointTwoName :
public CPointNameEx
{
public:
CPointTwoName(void);
virtual ~CPointTwoName(void);
void Serialize(CArchive& ar, const short &ver) override;
virtual int Read(CFile& fr, const short& ver);
virtual void Write(CFile &fw, const short& ver);
virtual void WriteDML(CFile &fw, const short& ver, int nBaseTabNum);
virtual int ReadDML(CFile &fr, const short &ver);
virtual void WritePCG(CFile &fw, const short& ver, int nBaseTabNum);
virtual int ReadPCG(CFile &fr, const short &ver);
void operator=(CPointTwoName& pn);
void Clear(void);
void SetDisplayMode(DWORD nMode);
DWORD GetDisplayMode(void);
enum enDisplayMode
{
displayVertical = 0x00000001, //纵向排列模式
displayHorizontal = 0x00000002, //横向排列模式
displayCross = 0x00000004 //十字交叉显示,对于分数点按照垂直显示
};
//保存四个文字内容,每个点内的坐标是相对于中心坐标的
CPointNameBase m_name1;
CPointNameBase m_name2;
DWORD m_nFlags;
protected:
void WriteName(CFile& fw, CPointNameBase& pn);
int ReadName(CFile& fr, CPointNameBase& pn);
void WriteXYZ(CFile& fw, const short &ver);
public:
virtual int ReadPCG(void *pxp, const short &ver);
};
//
// P1 | P2
// --------+----------- 中心点坐标x,y)
// P3 | P4
//
class AFX_EXT_CLASS CPointCrossName :
public CPointTwoName
{
public:
CPointCrossName(void);
virtual ~CPointCrossName(void);
void Serialize(CArchive& ar, const short &ver) override;
virtual int Read(CFile& fr, const short& ver);
virtual void Write(CFile &fw, const short& ver);
virtual void WriteDML(CFile &fw, const short& ver, int nBaseTabNum);
virtual int ReadDML(CFile &fr, const short &ver);
virtual void WritePCG(CFile &fw, const short& ver, int nBaseTabNum);
virtual int ReadPCG(CFile &fr, const short &ver);
virtual void GetRange(CRect8& range,void* HowToViewPoint);
void operator=(CPointCrossName& pn);
void Clear(void);
//保存四个文字内容,每个点内的坐标是相对于中心坐标的
//CPointNameBase m_name1;
//CPointNameBase m_name2;
CPointNameBase m_name3;
CPointNameBase m_name4;
public:
virtual int ReadPCG(void *pxp, const short &ver);
};