|
|
|
|
#pragma once
|
|
|
|
|
|
|
|
|
|
#include "iGridRowGroup.h"
|
|
|
|
|
|
|
|
|
|
class iBdyInfo;
|
|
|
|
|
|
|
|
|
|
// 边界分组的特殊处理
|
|
|
|
|
class X_GUI_GRIDPTY_EXPORT iGridRowGroupBdy : public iGridRowGroup
|
|
|
|
|
{
|
|
|
|
|
Q_OBJECT
|
|
|
|
|
|
|
|
|
|
public:
|
|
|
|
|
|
|
|
|
|
explicit iGridRowGroupBdy(iGridRowItem* pParent = NULL);
|
|
|
|
|
~iGridRowGroupBdy();
|
|
|
|
|
|
|
|
|
|
public:
|
|
|
|
|
|
|
|
|
|
// 序列化
|
|
|
|
|
virtual void onSerialize(ZxSerializer* ser);
|
|
|
|
|
virtual void onDeserialize(ZxSerializer* ser);
|
|
|
|
|
|
|
|
|
|
// 控件
|
|
|
|
|
virtual void initEditor();
|
|
|
|
|
virtual void setDlgBase(QWidget* p);
|
|
|
|
|
virtual void configEditor();
|
|
|
|
|
virtual void initOtherEditors();
|
|
|
|
|
|
|
|
|
|
// 范围
|
|
|
|
|
virtual void setBounds(QRectF& rt);//全局
|
|
|
|
|
virtual QRectF getRightBounds_Main();//右
|
|
|
|
|
|
|
|
|
|
signals:
|
|
|
|
|
|
|
|
|
|
/// @brief 触发边界信息改变,比如修改平行边界,由上下改为左右
|
|
|
|
|
/// @param pItem: (in) 当前的GroupItem,其实即是本类iGridRowGroupBdy
|
|
|
|
|
/// @param vvec: (in & out) 边界信息数据
|
|
|
|
|
/// @param bModified: (out) 是否正确触发且vvec发生改变
|
|
|
|
|
void sigBdyDetails(iGridRowItem* pItem, \
|
|
|
|
|
QVector< iBdyInfo* >& vvec, \
|
|
|
|
|
bool& bModified);
|
|
|
|
|
|
|
|
|
|
public slots:
|
|
|
|
|
|
|
|
|
|
virtual void slotBdyDetails();
|
|
|
|
|
|
|
|
|
|
public:
|
|
|
|
|
|
|
|
|
|
// 绘图
|
|
|
|
|
virtual void paint(QPainter* pPainter);
|
|
|
|
|
//根据设置后结果设置属性
|
|
|
|
|
void freshChildsWithBdys(QVector<iBdyInfo*> vvec);
|
|
|
|
|
|
|
|
|
|
protected:
|
|
|
|
|
// virtual void paintGroup(QPainter* pPainter, int nCountVisible);
|
|
|
|
|
// virtual void paintItem(QPainter* pPainter);
|
|
|
|
|
// virtual void _paintItemTag(QPainter* pPainter, QString s);
|
|
|
|
|
virtual void _paintItemValue(QPainter* pPainter);
|
|
|
|
|
// virtual void _paintItemIcon(QPainter* pPainter);
|
|
|
|
|
// virtual void _paintItemGrid(QPainter* pPainter);
|
|
|
|
|
|
|
|
|
|
private:
|
|
|
|
|
|
|
|
|
|
protected:
|
|
|
|
|
QPushButton* m_pBtn;
|
|
|
|
|
};
|