logplus/ModuleConsole/include/PaiInfoEditor.h

165 lines
4.7 KiB
C
Raw Normal View History

2026-01-16 17:18:41 +08:00
/**
* @file PaiInfoEditor.h
* @brief ,Loading动画
* @date 2011-10-25
* @Author dev
*/
#ifndef PAI_FRAME_WORKFLOWVIEW_PAIINFOEDITOR_H
#define PAI_FRAME_WORKFLOWVIEW_PAIINFOEDITOR_H
#include <QFrame>
#include "ParameterProperty.h"
#include "PaiToolButton.h"
class QPushButton;
class QLabel;
class QMovie;
class QModelIndex;
namespace pai {
namespace gui {
class PaiLabel;
}
namespace graphics2d {
class ParameterProperty;
/**
* @class CPaiInfoEditor
* @brief ,Loading动画
*/
class CPaiInfoEditor : public QFrame
{
Q_OBJECT
public:
/**
*@brief ToolTip的内容截短换行
*/
static QString GetToolTipDescription(QString description);
/**
* @brief
* @param pParameterProperty
* @param parent
*/
CPaiInfoEditor(ParameterProperty* pParameterProperty,QWidget *parent=0,const QString& strDisplayName="");
/**
* @brief
*/
virtual ~CPaiInfoEditor();
/**
* @brief
*/
QWidget* GetInternalEditor() const;
/**
* @brief
*/
bool HasDeleteButton() const;
/*
* @brief sizeHint用来获得设计的高度
*/
virtual QSize sizeHint() const;
public slots:
/**
* @brief
* @param dataIndex
* @param strPropertyName
* @param varPropertyValue
*/
void slotDataPropertyChanged(const QModelIndex& dataIndex,const QString& strPropertyName,const QVariant& varPropertyValue);
void slotUpdateHideShowItemsIcon(bool hide);
protected:
/**
* @brief focusin focuseOut事件
*/
bool eventFilter(QObject *obj, QEvent *event);
private:
/**
* @brief ID
* @param pParameterProperty
*/
QString _GetDeleteItemID(ParameterProperty* pParameterProperty) const;
/**
* @brief
* @return
*/
QWidget* CreateInternalEditor();
private slots:
/**
* @brief Loading动画
*/
void slotShowLoadingAnimate();
/**
* @brief Loading动画
*/
void slotStopAnimate();
/**
* @brief
* @param errorMessage
*/
void slotSetErrorMessage(const QString& errorMessage);
/**
* @brief
*/
void slotOnDeleteButtonClick();
/**
* @brief
*/
void slotOnHideShowButtonClick();
/**
* @brief
*/
void slotOnHideShowOptionalButtonClick();
/**
* @brief
* @param bShow true: false:
*/
void slotShowDeleteButton(bool bShow);
private:
ParameterProperty* m_pParameterProperty;//相应的参数面板节点
pai::gui::PaiLabel *m_label;//错误信息提示区
QWidget* m_pInternalEditor;//内部的编辑器句柄
QPushButton *m_pMovieLabel;//Loading动画显示区
QMovie *m_pMovie;//Loading动画
bool HideBrothers;
//pai::gui::PaiToolButton* pHideShowButton ;
bool HideOptionals;
pai::gui::PaiToolButton* pHideShowOptionalButton ;
signals:
/**
* @brief
* @param strDeleteItemID ID
*/
void signalDeleteItem(const QString& strDeleteItemID);
/**
* @brief
* @param strDeleteItemID ID
*/
void signalHideShowItems(const QString& strDeleteItemID,bool hideBrothers);
/**
* @brief
* @param strDeleteItemID ID
*/
void signalHideShowOptionalItems(const QString& strDeleteItemID,bool hide);
/**
* @brief
*/
void _signalInternalEditorLostFocus(const QString &str);
/**
*@brief QLineEditor + -
*/
void editFocuseOut();
};
}
}
#endif