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.
nmWTAI-Platform/Include/nmNum/nmData/nmDataRegionMark.h

65 lines
1.9 KiB
C

#pragma once
#include "nmData_global.h"
#include "nmDataBase.h"
#include "nmDefines.h"
#include "nmDataAttribute.h"
#include "ZxDataObjectDbl.h"
class NM_DATA_EXPORT nmDataRegionMark : public nmDataBase{
Q_OBJECT
public:
nmDataRegionMark();
nmDataRegionMark(const nmDataRegionMark& other); // 拷贝构造函数
nmDataRegionMark& operator=(const nmDataRegionMark& other); // 赋值运算符
~nmDataRegionMark();
// 实现 nmDataBase 的抽象方法:将当前 C++ 对象序列化为 RapidJSON Value
virtual rapidjson::Value ToJsonValue(rapidjson::Document::AllocatorType& allocator) const override;
// 实现 nmDataBase 的抽象方法:从 RapidJSON Value 反序列化数据到当前 C++ 对象
virtual void FromJsonValue(const rapidjson::Value& jsonValue) override;
public:
// Getter and Setter
QString getRegionMarkName() const;
void setRegionMarkName(QString sRegionMarkName);
bool isSelectRegion() const;
void setSelectRegion(bool bSelectRegion);
QPointF getPtPos() const;
void setPtPos(const QPointF& ptPos);
nmDataAttribute& getReservoirType();
void setReservoirType(const nmDataAttribute& reservoirType);
nmDataAttribute& getComKr();
void setComKr(const nmDataAttribute& comKr);
nmDataAttribute& getComW();
void setComW(const nmDataAttribute& comW);
nmDataAttribute& getNetToGross();
void setNetToGross(const nmDataAttribute& netToGross);
QColor getBackgroundColor() const;
void setBackgroundColor(const QColor& clrBackground);
bool getPlotVisible() const;
void setPlotVisible(const bool newState);
private:
QString m_sRegionMarkName;
bool m_bSelectRegion;
QPointF m_ptPos; // 当前区域标记所在的位置
nmDataAttribute m_reservoirType;
nmDataAttribute m_comKr;
nmDataAttribute m_comW;
nmDataAttribute m_netToGross;
QColor m_clrBackground;
bool m_bPlotVisible; // 图元是否可见
};