logplus/Workflow/WFWidget/include/PaiTableItemDelegate.h

68 lines
1.5 KiB
C
Raw Normal View History

2026-01-17 12:55:45 +08:00
/*
* @file PaiTableItemDelegate.h
* @brief PAI系统中常见的节点绘制类
* @date 2012-10-16
*/
#ifndef PAI_FRAME_WIDGET_PAITABLEITEMDELEGATE_H
#define PAI_FRAME_WIDGET_PAITABLEITEMDELEGATE_H
#include <QStyledItemDelegate>
#include <QPen>
#include <QTableView>
#include "Turtle.h"
namespace pai
{
namespace gui
{
/**
* @class PaiTableItemDelegate
* @brief PAI item delegate grid line, cell的颜色
*/
class PAI_WIDGET_EXPORT PaiTableItemDelegate: public QStyledItemDelegate
{
public:
/**
* @enum DATA_ROLE
* @brief
*/
enum DATA_ROLE
{
HOVERING_ROLE = 1024 ///< 悬浮
};
public:
/**
* @brief
* @param[in] pTableView QTableView
*/
PaiTableItemDelegate(QTableView *pTableView);
/**
* @brief 线
* @param[in] horizontal 线
* @param[in] verticalLine 线
*/
virtual void setShowGrid(bool horizontal, bool verticalLine);
protected:
/**
* @brief
* @param[in] pPainter
* @param[in] option
* @param[in] index
*/
virtual void paint(QPainter *pPainter, const QStyleOptionViewItem & option, const QModelIndex & index) const;
private:
QPen m_GridPen; ///< 网格画笔
bool m_HorizontalLine; ///< 水平线
bool m_VerticallLine; ///< 垂直线
};
}
}
#endif ///< PAI_FRAME_WIDGET_PAITABLEITEMDELEGATE_H