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.

67 lines
1.9 KiB
C++

#ifndef TRACKPICTUREOBJ_H
#define TRACKPICTUREOBJ_H
#pragma once
//////////////////////////////////////////////////////////////////////////////
//主要功能:
// 图像道类
/////////////////////////////////////////////////////////////////////////////
#include "InTrackPicture.h"
class AFX_EXT_CLASS CTrackPicture : public CInclinedTrack
{
public:
CTrackPicture();
CTrackPicture(const CRect8& position);
virtual ~CTrackPicture();
protected:
DWORD m_nTrackPictureFlags; //图片道开关状态
// 图片道Flags
enum TrackPictureFlags
{
TrackPictureMark = 0x0001 // 显示标注
};
// Implementation
public:
virtual void ResetChildProperties(); // 重设置试油、文本子对象属性
virtual void AddObjChild(); //创建图像子对象
virtual void MoveChildren();//移动子对象的位置
virtual void CalcBorders();
virtual void Serialize(CArchive& ar, const short &ver);
//开关变量值
virtual void SetTrackPictureFlags(DWORD flags);
virtual void SetShowMark(BOOL bFlag);
virtual DWORD GetTrackPictureFlags();
virtual BOOL IsShowMark();
virtual void BuidChildObject(vector<CString> &fields, StringVectorSet &datas, BOOL bInit=FALSE);
void GetChildDatas(StringVectorSet &dataContent, BOOL bHaveWellName = TRUE);
public:
//PCG读写
//读pcg格式的道
virtual int ReadPCG_Self(CFile &fr,CXmlParse& xp,const short& ver );
//读pcg格式的数据
virtual int ReadPCG_Data(CFile &fr,const short& ver);
//写pcg格式的道
virtual void WritePCG_Trace(CFile &fw,int nBaseTabNum);
//写pcg格式的道内数据
virtual void WritePCG_Data(CFile &fw,int nBaseTabNum);
protected:
BOOL ReadPictureData(CFile &fr,CXmlParse& xp,CInTrackPicture* pPicture,CString strTitle);
public:
virtual int ReadPCG_Self(CKXmlParse& xp, const short& ver);
//读pcg格式的数据
virtual int ReadPCG_Data(CKXmlParse& xp, const short& ver);
BOOL ReadPictureData(CKXmlParse& xp, CInTrackPicture* pPicture, CString strTitle);
public:
virtual void GetChildDatas(CString& jsonStr);
virtual BOOL SetChildDatas(CString& jsonStr);
};
#endif