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/iGui/iGuiGridPty/iGridRowItemBdy.h

85 lines
1.9 KiB
C

#pragma once
#include "iGridRowItemUnt.h"
// 边界
class X_GUI_GRIDPTY_EXPORT iGridRowItemBdy :
public iGridRowItemUnt
{
Q_OBJECT
public:
// 分别对应0,1,2
//m_listOptions << tr("CloseB");
//m_listOptions << tr("FixP");
// m_listOptions << tr("Infinite");
/// @brief 边界下拉选项
enum BdyItemOption
{
BDY_Item_CloseB = 0, //0:封闭(即不渗透)
BDY_Item_FixP, //1:定压
BDY_Item_Infinite, //2:无限大
BDY_Item_Unknown
};
public:
explicit iGridRowItemBdy(iGridRowItem* pParent = nullptr);
~iGridRowItemBdy();
//
virtual void setParameter(iParameter* p);
// 初始化子控件
void initEditor();
// 设置父窗体、为了Editor位置控制
void setDlgBase(QWidget* p);
public:
// 序列化
virtual void onSerialize(ZxSerializer* ser);
virtual void onDeserialize(ZxSerializer* ser);
// 范围
virtual void setBounds(QRectF& rt);//全局
virtual QRectF getRightBounds_Main();//右
virtual QRectF getRightBounds_Bdy();
virtual QRectF getRightBounds_Unt();
// 结果
virtual QVariant getInfoRight();
virtual QString getInfoUnit();
virtual QString getShowValue(); //非激活时显示在右侧的文本
int getBdyTypeCbxIndex();
// 双击
virtual void onItemDoubleCliked(GridTickPos o);
// from邹春梅封闭放在边界距离前面是不是好些
virtual void organizeResult(iResultInfo& o, QString sType);
protected slots:
void slotBdyItemOptionChanged(QString sItemOption);
protected:
virtual void _paintItemValue(QPainter* pPainter);
virtual void freshBdyDistance();
BdyItemOption getBioBy(QString sItemOption);
QString getOptionBy(BdyItemOption bio);
private:
QComboBox* m_pCbxTypes;
QStringList m_listAllOptions;
QStringList m_listPossibleOptions;
int m_nIndexOption;
bool m_bEnableSP; //临时变量
};