#ifndef CCSIMAGE_H #define CCSIMAGE_H #include "qglobal.h" #include "QObject" #include "ccsreport_global.h" #include "ccsitem.h" namespace CCS_Report { class CCSItem; class CCSItemPrivate; class CCSImagePrivate; class ReportFunPara; class CCS_COMPASSREPORT_EXPORT CCSImage:public CCSItem { Q_OBJECT Q_ENUMS(ShowMode) Q_PROPERTY(int showmode READ showmode WRITE SetShowMode) Q_PROPERTY(QSize size READ size WRITE SetSize) Q_PROPERTY(int widthmode READ widthmode WRITE SetWidthMode) Q_PROPERTY(int heightmode READ heightmode WRITE SetHeightMode) public: CCSImage(QObject * parent = 0); ~CCSImage(); enum class ShowMode { Clip = 0, Real = 1, Scale = 2 }; virtual CCSBaseItemInterface * createInstance(QObject * parent) const; virtual CCSBaseItemInterface * clone(bool withChildren = true, bool init = true) const; virtual void exeFunction(ReportFunPara& arg); virtual void SetValue(const QString & text,int iPos=0); void SetFieldValue(QList>& fieldvalue); void ParseFeildValue(QList> groupKey=QList>()); int showmode() const; void SetShowMode(int& show); //qreal opacity() const; //void SetOpacity(const qreal &o); void SetImagesize(const QSize & s=QSize()); QSize imagerealsize() const; QSize size() const; void SetSize(const QSize & h); int widthmode() const; void SetWidthMode(const int &flag); int heightmode()const; void SetHeightMode(const int & flag); protected: Q_DECLARE_PRIVATE(CCSImage) CCSImage(CCSImagePrivate *dd, QObject * parent); virtual CCSBaseItemInterface * itemClone() const; private: }; class CCSImagePrivate:public CCSItemPrivate { public: CCSImagePrivate() :CCSItemPrivate(), m_eShowMode(1), m_iWidthMode(0), m_iHeightMode(0) { m_Size.setHeight(0); m_Size.setWidth(0); } CCSImagePrivate(const CCSImagePrivate& p) :CCSItemPrivate(p), m_eShowMode(p.m_eShowMode), m_Size(p.m_Size), m_iWidthMode(p.m_iWidthMode), m_iHeightMode(p.m_iHeightMode) {} virtual ~CCSImagePrivate(){} int m_eShowMode; //图片显示模式 int m_iWidthMode; // =0 自身大小 =1 按定义宽度 int m_iHeightMode; // = 0 独立 =1 按宽度比例计算 int m_iHeight; //百分比,像素值 QColor m_Color; QFont m_Font; QSize m_Size; //图片设定大小 QSize m_realSize; //图片真实大小 }; } #endif // CCSIMAGE_H