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:276
ArrowAttachItem(ArrowTarget *_startItem)
Definition arrow_item.cpp:266
void addChildArrow(ArrowAttachItem *childArrow)
Definition arrow_item.cpp:271
QList< ArrowAttachItem * > childArrows
Definition arrow_item.h:101
void mouseReleaseEvent(QGraphicsSceneMouseEvent *event) override
Definition arrow_item.cpp:342
void attachCards(CardItem *startCard, const CardItem *targetCard)
Definition arrow_item.cpp:317
ArrowDragItem(Player *_owner, ArrowTarget *_startItem, const QColor &_color, int _deleteInPhase)
Definition arrow_item.cpp:155
void mouseMoveEvent(QGraphicsSceneMouseEvent *event) override
Definition arrow_item.cpp:165
QList< ArrowDragItem * > childArrows
Definition arrow_item.h:86
void mouseReleaseEvent(QGraphicsSceneMouseEvent *event) override
Definition arrow_item.cpp:212
void addChildArrow(ArrowDragItem *childArrow)
Definition arrow_item.cpp:160
int deleteInPhase
Definition arrow_item.h:85
ArrowItem(Player *_player, int _id, ArrowTarget *_startItem, ArrowTarget *_targetItem, const QColor &color)
Definition arrow_item.cpp:22
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:132
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:37
void updatePath()
Definition arrow_item.cpp:58
void setStartItem(ArrowTarget *_item)
Definition arrow_item.h:58
void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget) override
Definition arrow_item.cpp:121
void setTargetItem(ArrowTarget *_item)
Definition arrow_item.h:62
void delArrow()
Definition arrow_item.cpp:41
Definition arrow_target.h:18
Definition card_item.h:29