10#include <QGraphicsItem>
13class QGraphicsSceneMouseEvent;
18class ArrowItem :
public QObject,
public QGraphicsItem
21 Q_INTERFACES(QGraphicsItem)
38 void paint(QPainter *painter,
const QStyleOptionGraphicsItem *option, QWidget *widget)
override;
41 return path.boundingRect();
43 [[nodiscard]] QPainterPath
shape()
const override
void mouseMoveEvent(QGraphicsSceneMouseEvent *event) override
Definition arrow_item.cpp:277
ArrowAttachItem(ArrowTarget *_startItem)
Definition arrow_item.cpp:267
void addChildArrow(ArrowAttachItem *childArrow)
Definition arrow_item.cpp:272
QList< ArrowAttachItem * > childArrows
Definition arrow_item.h:101
void mouseReleaseEvent(QGraphicsSceneMouseEvent *event) override
Definition arrow_item.cpp:343
void attachCards(CardItem *startCard, const CardItem *targetCard)
Definition arrow_item.cpp:318
ArrowDragItem(Player *_owner, ArrowTarget *_startItem, const QColor &_color, int _deleteInPhase)
Definition arrow_item.cpp:156
void mouseMoveEvent(QGraphicsSceneMouseEvent *event) override
Definition arrow_item.cpp:166
QList< ArrowDragItem * > childArrows
Definition arrow_item.h:86
void mouseReleaseEvent(QGraphicsSceneMouseEvent *event) override
Definition arrow_item.cpp:213
void addChildArrow(ArrowDragItem *childArrow)
Definition arrow_item.cpp:161
int deleteInPhase
Definition arrow_item.h:85
ArrowItem(Player *_player, int _id, ArrowTarget *_startItem, ArrowTarget *_targetItem, const QColor &color)
Definition arrow_item.cpp:23
ArrowTarget * getStartItem() const
Definition arrow_item.h:66
void setTargetLocked(bool _targetLocked)
Definition arrow_item.h:74
QMenu * menu
Definition arrow_item.h:24
Player * getPlayer() const
Definition arrow_item.h:54
QRectF boundingRect() const override
Definition arrow_item.h:39
void mousePressEvent(QGraphicsSceneMouseEvent *event) override
Definition arrow_item.cpp:133
ArrowTarget * startItem
Definition arrow_item.h:29
int id
Definition arrow_item.h:28
Player * player
Definition arrow_item.h:27
bool fullColor
Definition arrow_item.h:32
QPainterPath path
Definition arrow_item.h:23
int getId() const
Definition arrow_item.h:50
ArrowTarget * getTargetItem() const
Definition arrow_item.h:70
QColor color
Definition arrow_item.h:31
bool targetLocked
Definition arrow_item.h:30
ArrowTarget * targetItem
Definition arrow_item.h:29
QPainterPath shape() const override
Definition arrow_item.h:43
~ArrowItem() override
Definition arrow_item.cpp:38
void updatePath()
Definition arrow_item.cpp:59
void setStartItem(ArrowTarget *_item)
Definition arrow_item.h:58
void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget) override
Definition arrow_item.cpp:122
void setTargetItem(ArrowTarget *_item)
Definition arrow_item.h:62
void delArrow()
Definition arrow_item.cpp:42
Definition arrow_target.h:18
Definition card_item.h:29