From 179f1fe14b635aaab2d78b6d77106ed145a29c75 Mon Sep 17 00:00:00 2001 From: Max-Wilhelm Bruker Date: Tue, 9 Nov 2010 19:14:32 +0100 Subject: [PATCH] added yellow border to cards being moused over --- cockatrice/src/abstractcarditem.cpp | 12 +++++++++++- cockatrice/src/abstractcarditem.h | 2 ++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/cockatrice/src/abstractcarditem.cpp b/cockatrice/src/abstractcarditem.cpp index 27895623..90dd3e0d 100644 --- a/cockatrice/src/abstractcarditem.cpp +++ b/cockatrice/src/abstractcarditem.cpp @@ -13,7 +13,7 @@ #include AbstractCardItem::AbstractCardItem(const QString &_name, Player *_owner, QGraphicsItem *parent) - : ArrowTarget(_owner, parent), info(db->getCard(_name)), infoWidget(0), name(_name), tapped(false), tapAngle(0) + : ArrowTarget(_owner, parent), info(db->getCard(_name)), infoWidget(0), name(_name), tapped(false), tapAngle(0), isHovered(false) { setCursor(Qt::OpenHandCursor); setFlag(ItemIsSelectable); @@ -132,6 +132,9 @@ void AbstractCardItem::paint(QPainter *painter, const QStyleOptionGraphicsItem * if (isSelected()) { painter->setPen(Qt::red); painter->drawRect(QRectF(0.5, 0.5, CARD_WIDTH - 1, CARD_HEIGHT - 1)); + } else if (isHovered) { + painter->setPen(Qt::yellow); + painter->drawRect(QRectF(0.5, 0.5, CARD_WIDTH - 1, CARD_HEIGHT - 1)); } painter->restore(); @@ -209,9 +212,16 @@ void AbstractCardItem::processHoverEvent() void AbstractCardItem::hoverEnterEvent(QGraphicsSceneHoverEvent *event) { processHoverEvent(); + isHovered = true; QGraphicsItem::hoverEnterEvent(event); } +void AbstractCardItem::hoverLeaveEvent(QGraphicsSceneHoverEvent *event) +{ + isHovered = false; + QGraphicsItem::hoverLeaveEvent(event); +} + QVariant AbstractCardItem::itemChange(QGraphicsItem::GraphicsItemChange change, const QVariant &value) { if (change == ItemSelectedHasChanged) { diff --git a/cockatrice/src/abstractcarditem.h b/cockatrice/src/abstractcarditem.h index 9f9f83ad..39d24c61 100644 --- a/cockatrice/src/abstractcarditem.h +++ b/cockatrice/src/abstractcarditem.h @@ -22,6 +22,7 @@ protected: QString color; private: QTimer *animationTimer; + bool isHovered; private slots: void animationEvent(); void pixmapUpdated(); @@ -51,6 +52,7 @@ protected: void mousePressEvent(QGraphicsSceneMouseEvent *event); void mouseReleaseEvent(QGraphicsSceneMouseEvent *event); void hoverEnterEvent(QGraphicsSceneHoverEvent *event); + void hoverLeaveEvent(QGraphicsSceneHoverEvent *event); QVariant itemChange(QGraphicsItem::GraphicsItemChange change, const QVariant &value); };