2025-03-14 15:07:39 +08:00
|
|
|
|
#ifndef CSHIELDTABLEDELEGATE_H
|
|
|
|
|
|
#define CSHIELDTABLEDELEGATE_H
|
|
|
|
|
|
|
|
|
|
|
|
#include <QStyledItemDelegate>
|
|
|
|
|
|
#include "CShieldinfo.h"
|
|
|
|
|
|
|
|
|
|
|
|
class CShieldTableModel;
|
|
|
|
|
|
class CShieldTableDelegate : public QStyledItemDelegate
|
|
|
|
|
|
{
|
|
|
|
|
|
Q_OBJECT
|
|
|
|
|
|
public:
|
|
|
|
|
|
CShieldTableDelegate(CShieldTableModel *model, QObject *parent = 0);
|
|
|
|
|
|
|
|
|
|
|
|
void paint(QPainter *painter, const QStyleOptionViewItem &option, const QModelIndex &index) const Q_DECL_OVERRIDE;
|
|
|
|
|
|
|
|
|
|
|
|
bool editorEvent(QEvent *event, QAbstractItemModel *model,
|
|
|
|
|
|
const QStyleOptionViewItem &option, const QModelIndex &index) Q_DECL_OVERRIDE;
|
|
|
|
|
|
|
|
|
|
|
|
QColor buttonBackground();
|
|
|
|
|
|
void setButtonBackground(const QColor &color);
|
|
|
|
|
|
|
|
|
|
|
|
QColor buttonColor();
|
|
|
|
|
|
void setButtonColor(const QColor &color);
|
|
|
|
|
|
|
|
|
|
|
|
private:
|
|
|
|
|
|
void shield(ST_Shield_Info &info);
|
|
|
|
|
|
|
|
|
|
|
|
void unshield(ST_Shield_Info &info);
|
|
|
|
|
|
|
|
|
|
|
|
void delShield(ST_Shield_Info &info);
|
|
|
|
|
|
|
|
|
|
|
|
private:
|
|
|
|
|
|
CShieldTableModel * m_pModel;
|
|
|
|
|
|
QColor m_buttonBack;
|
|
|
|
|
|
QColor m_buttonColor;
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
#endif // CSHIELDTABLEDELEGATE_H
|