7#ifndef ABSTRACTCARDITEM_H
8#define ABSTRACTCARDITEM_H
65 PlayerLogic *_owner =
nullptr,
69 QPainterPath
shape()
const override;
71 void paintPicture(QPainter *painter,
const QSizeF &translatedSize,
int angle);
72 void paint(QPainter *painter,
const QStyleOptionGraphicsItem *option, QWidget *widget)
override;
113 void setColor(
const QString &_color);
118 void setTapped(
bool _tapped,
bool canAnimate =
false);
134 void transformPainter(QPainter *painter,
const QSizeF &translatedSize,
int angle);
137 QVariant
itemChange(QGraphicsItem::GraphicsItemChange change,
const QVariant &value)
override;
Interface for scene items driven by GameScene's shared animation timer.
Canonical card dimension constants for layout and Z-value calculations.
qreal realZValue
Definition abstract_card_item.h:35
~AbstractCardItem() override
Definition abstract_card_item.cpp:40
void playSelectedFaceDown(AbstractCardItem *card)
void setFaceDown(bool _facedown)
Definition abstract_card_item.cpp:313
QVariant itemChange(QGraphicsItem::GraphicsItemChange change, const QVariant &value) override
Definition abstract_card_item.cpp:352
bool tapped
Definition abstract_card_item.h:27
CardRef cardRef
Definition abstract_card_item.h:26
qreal getRealZValue() const
Definition abstract_card_item.h:99
void setId(int _id)
Definition abstract_card_item.h:82
int type() const override
Definition abstract_card_item.h:59
QPainterPath shape() const override
Definition abstract_card_item.cpp:50
void refreshCardInfo()
Definition abstract_card_item.cpp:65
void deleteCardInfoPopup(QString cardName)
void setTapped(bool _tapped, bool canAnimate=false)
Definition abstract_card_item.cpp:289
void mouseReleaseEvent(QGraphicsSceneMouseEvent *event) override
Definition abstract_card_item.cpp:337
void cardShiftClicked(QString cardName)
QSizeF getTranslatedSize(QPainter *painter) const
Definition abstract_card_item.cpp:102
QRectF boundingRect() const override
Definition abstract_card_item.cpp:45
bool getFaceDown() const
Definition abstract_card_item.h:119
void mousePressEvent(QGraphicsSceneMouseEvent *event) override
Definition abstract_card_item.cpp:319
int id
Definition abstract_card_item.h:25
void transformPainter(QPainter *painter, const QSizeF &translatedSize, int angle)
Definition abstract_card_item.cpp:108
void pixmapUpdated()
Definition abstract_card_item.cpp:59
AbstractCardItem(QGraphicsItem *parent=nullptr, const CardRef &cardRef={}, PlayerLogic *_owner=nullptr, int _id=-1)
Definition abstract_card_item.cpp:19
void hovered(AbstractCardItem *card)
void setRealZValue(qreal _zValue)
Definition abstract_card_item.cpp:91
void deleteCardInfoPopup()
Definition abstract_card_item.h:125
bool animationEvent() override
Default: no per-tick animation. Subclasses override to animate.
Definition abstract_card_item.cpp:308
void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget) override
Definition abstract_card_item.cpp:185
void playSelected(AbstractCardItem *card)
void cacheBgColor()
Definition abstract_card_item.cpp:255
void paintPicture(QPainter *painter, const QSizeF &translatedSize, int angle)
Definition abstract_card_item.cpp:127
QString getColor() const
Definition abstract_card_item.h:109
CardRef getCardRef() const
Definition abstract_card_item.h:95
bool facedown
Definition abstract_card_item.h:28
bool getIsHovered() const
Definition abstract_card_item.h:105
void rightClicked(AbstractCardItem *card, QPoint screenPos)
void setColor(const QString &_color)
Definition abstract_card_item.cpp:248
QString getName() const
Definition abstract_card_item.h:86
ExactCard getCard() const
Definition abstract_card_item.h:73
@ Type
Definition abstract_card_item.h:57
QString getProviderId() const
Definition abstract_card_item.h:90
void showCardInfoPopup(const QPoint &pos, const CardRef &cardRef)
void hideSelected(AbstractCardItem *card)
QString color
Definition abstract_card_item.h:30
void processHoverEvent()
Definition abstract_card_item.cpp:347
QColor bgColor
Definition abstract_card_item.h:31
bool getTapped() const
Definition abstract_card_item.h:114
void setCardRef(const CardRef &_cardRef)
Definition abstract_card_item.cpp:210
bool isHovered
Definition abstract_card_item.h:34
const CardInfo & getCardInfo() const
Definition abstract_card_item.cpp:86
ExactCard exactCard
Definition abstract_card_item.h:24
void setHovered(bool _hovered)
Definition abstract_card_item.cpp:225
void selectionChanged(AbstractCardItem *card, bool selected)
int getId() const
Definition abstract_card_item.h:78
int tapAngle
Definition abstract_card_item.h:29
ArrowTarget(PlayerLogic *_owner, QGraphicsItem *parent=nullptr)
Definition arrow_target.cpp:6
Represents a card and its associated metadata, properties, and relationships.
Definition card_info.h:51
Represents a specific card instance, defined by its CardInfo and a particular printing.
Definition exact_card.h:19
Definition animated_item.h:15
Definition player_logic.h:65
@ typeCard
Definition graphics_item_type.h:14