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.

102 lines
2.8 KiB
C

1 month ago
//////////////////////////////////////////////////////////////////////////////
//<2F>ļ<EFBFBD> InsertDraw.h
//<2F><>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD>:
//
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>д: 2005-12-07
/////////////////////////////////////////////////////////////////////////////
#pragma once
#include ".\pointnamerect.h"
#define COORDINATE_LEFT_BOTTOM 0x00000001 //<2F><><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD>½<EFBFBD>
#define COORDINATE_CENTER 0x00000002 //<2F><><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8>Ϊ<EFBFBD><CEAA>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>̬,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͺ<EFBFBD><CDBA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define INSERT_DRAW_PLUS 0x00000800 //<2F><>ʾΪ<CABE>Ӻţ<D3BA>ȱʡ<C8B1><CAA1>
#define INSERT_DRAW_CIRCLE 0x00001000 //<2F><>ʾΪԲ<CEAA><D4B2>
#define INSERT_DRAW_ASTERISK 0x00002000 //<2F><>ʾΪ<CABE>Ǻ<EFBFBD>
#define INSERT_DRAW_CROSS 0x00004000 //<2F><>ʾΪ<CABE><CEAA><EFBFBD><EFBFBD>
#define INSERT_DRAW_DOT 0x00008000 //<2F><>ʾΪ<CABE><CEAA>״
#define INSERT_DRAW_H_LINE 0x00010000 //<2F><>ʾΪˮƽ<CBAE><C6BD>
#define INSERT_DRAW_V_LINE 0x00020000 //<2F><>ʾΪ<CABE><CEAA>ֱ<EFBFBD><D6B1>
#define INSERT_DRAW_ALL (INSERT_DRAW_PLUS|INSERT_DRAW_CIRCLE|INSERT_DRAW_ASTERISK|INSERT_DRAW_CROSS|INSERT_DRAW_DOT|INSERT_DRAW_H_LINE|INSERT_DRAW_V_LINE)
//CInsertΪ<74>ϰ汾<CFB0>ķ<EFBFBD><C4B7><EFBFBD><EFBFBD><EFBFBD>ʾ
class AFX_EXT_CLASS CInsertOld : public CPointNameRect
{
public:
CInsertOld(void);
virtual ~CInsertOld(void);
void Serialize(CArchive& ar, const short &ver) override;
virtual void Write(CFile& fw, const short& ver);
virtual int Read(CFile& fr, const short& ver);
virtual BOOL IsInRange(CRect8& range);
virtual bool GetRange(CRect8& range);
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=(CInsertOld& id);
int PositionNew(int bReplace=1);
void GetNewUsing(CStringList &list);
void SetDrawMode(UINT nMode);
UINT GetDrawMode(void);
void* pDraw;
DWORD m_nFlags;
public:
virtual int ReadPCG(void *pxp, const short &ver);
};
//<2F>°汾<C2B0>ķ<EFBFBD><C4B7><EFBFBD><EFBFBD><EFBFBD>ʾ
class AFX_EXT_CLASS CInsertDraw : public CInsertOld
{
public:
CInsertDraw(void);
virtual ~CInsertDraw(void);
void Serialize(CArchive& ar, const short &ver) override;
virtual void Write(CFile& fw, const short& ver);
virtual int Read(CFile& fr, const short& ver);
virtual void WriteDML(CFile &fw, const short& ver, int nBaseTabNum);
virtual int ReadDML(CFile &fw, const short &ver);
virtual void WritePCG(CFile &fw, const short& ver, int nBaseTabNum);
virtual int ReadPCG(CFile &fw, const short &ver);
virtual int ReadPCG2(CFile &fr, const short &ver);
void operator=(CInsertDraw& id);
int ReadInsertOld(CFile& fr);
void* CreateUngroupXY(void); //<2F><>ɢ<EFBFBD><C9A2><EFBFBD>ţ<EFBFBD><C5A3><EFBFBD><EFBFBD>ص<EFBFBD>ΪCXyָ<79><D6B8>
CRect8 rect;
void SetExtendMode(UINT nMode);
UINT GetExtendMode(void);
enum drawExtendModeFlags
{
modeStrech = 0x00000004, //<2F><><EFBFBD><EFBFBD>
modeCenter = 0x00000008, //<2F><><EFBFBD><EFBFBD>
modeAll = (modeStrech|modeCenter)
};
public:
virtual int ReadPCG(void *pxp, const short &ver);
virtual int ReadPCG2(void *pxp, const short &ver);
};