101 lines
1.9 KiB
C++
101 lines
1.9 KiB
C++
/**
|
||
* @file PaiJobSummaryItem.h
|
||
* @brief 作业参数信息
|
||
* @date 2013-04-20
|
||
*/
|
||
#ifndef PAI_FRAME_WORKFLOWWIDGET_PAIJOBSUMMARYITEM_H
|
||
#define PAI_FRAME_WORKFLOWWIDGET_PAIJOBSUMMARYITEM_H
|
||
|
||
#include <QGraphicsItem>
|
||
#include <QRectF>
|
||
|
||
class QWidget;
|
||
|
||
namespace pai
|
||
{
|
||
namespace gui
|
||
{
|
||
class PaiJobSummaryWidget;
|
||
}
|
||
namespace objectmodel
|
||
{
|
||
class PaiJob;
|
||
}
|
||
}
|
||
|
||
namespace pai
|
||
{
|
||
namespace gui
|
||
{
|
||
/**
|
||
* @class PaiJobSummaryItem
|
||
* @brief 作业参数信息展示Item
|
||
*/
|
||
class PaiJobSummaryItem : public QGraphicsItem
|
||
{
|
||
public:
|
||
/**
|
||
* @brief item类型
|
||
*/
|
||
enum
|
||
{
|
||
Type = UserType + 1456 ///< item类型
|
||
};
|
||
|
||
/**
|
||
* @brief 构造函数
|
||
* @param[in] pJob 作业
|
||
* @param[in] pParent 父亲
|
||
*/
|
||
PaiJobSummaryItem(pai::objectmodel::PaiJob *pJob,QGraphicsItem *pParent = NULL);
|
||
|
||
/**
|
||
* @brief 析构函数
|
||
*/
|
||
virtual ~PaiJobSummaryItem();
|
||
|
||
/**
|
||
* @brief 获取item类型
|
||
* @return item类型
|
||
*/
|
||
virtual int type() const;
|
||
|
||
/**
|
||
* @brief 实现该虚函数,返回模块图元的包围矩形
|
||
* @reurn item外围矩形
|
||
*/
|
||
virtual QRectF boundingRect() const;
|
||
|
||
/**
|
||
* @brief 更新位置
|
||
*/
|
||
void UpdatePosition();
|
||
|
||
/**
|
||
* @brief 获取代理Widget
|
||
* @return 代理Widget
|
||
*/
|
||
pai::gui::PaiJobSummaryWidget* GetSummaryWidget() const;
|
||
|
||
private:
|
||
/**
|
||
* @brief 实现该虚函数,绘制当前item
|
||
* @param[in] pPainter 画笔
|
||
* @param[in] pOption 模块风格参数
|
||
* @param[in] pWidget 画布
|
||
*/
|
||
virtual void paint(QPainter *pPainter, const QStyleOptionGraphicsItem *pOption, QWidget *pWidget = NULL);
|
||
|
||
private:
|
||
qreal m_width; ///< 宽度
|
||
qreal m_height; ///< 高度
|
||
pai::gui::PaiJobSummaryWidget *m_pSummDlg; ///< 代理Widget
|
||
};
|
||
|
||
}
|
||
}
|
||
|
||
|
||
|
||
#endif ///< PAI_FRAME_WORKFLOWWIDGET_PAIJOBSUMMARYITEM_H
|