diff --git a/cockatrice/src/abstractcarditem.cpp b/cockatrice/src/abstractcarditem.cpp index 3b88e260..9167cb0e 100644 --- a/cockatrice/src/abstractcarditem.cpp +++ b/cockatrice/src/abstractcarditem.cpp @@ -120,14 +120,21 @@ void AbstractCardItem::paintPicture(QPainter *painter, const QSizeF &translatedS } else { painter->save(); transformPainter(painter, translatedSize, angle); - painter->drawPixmap(QPointF(0, 0), translatedPixmap); + painter->drawPixmap(QPointF(0, angle ? -1 : 0), translatedPixmap); painter->restore(); } painter->setBrush(bgColor); + QPen pen(Qt::black); - pen.setWidth(2); + pen.setJoinStyle(Qt::MiterJoin); + const int penWidth = 2; + pen.setWidth(penWidth); painter->setPen(pen); - painter->drawRect(QRectF(1, 1, CARD_WIDTH - 2, CARD_HEIGHT - 2)); + + if (!angle) + painter->drawRect(QRectF(0, 0, CARD_WIDTH - 1, CARD_HEIGHT - penWidth)); + else + painter->drawRect(QRectF(1, 1, CARD_WIDTH - 2, CARD_HEIGHT - 1.5)); if (translatedPixmap.isNull() || settingsCache->getDisplayCardNames() || facedown) { painter->save(); @@ -157,13 +164,19 @@ void AbstractCardItem::paint(QPainter *painter, const QStyleOptionGraphicsItem * painter->save(); painter->setRenderHint(QPainter::Antialiasing, false); transformPainter(painter, translatedSize, tapAngle); - if (isSelected()) { - painter->setPen(Qt::red); - painter->drawRect(QRectF(0.5, 0.5, translatedSize.width() - 1, translatedSize.height() - 1)); - } else if (isHovered) { - painter->setPen(Qt::yellow); - painter->drawRect(QRectF(0.5, 0.5, translatedSize.width() - 1, translatedSize.height() - 1)); + + if (isSelected() || isHovered) { + QPen pen; + if (isHovered) + pen.setColor(Qt::yellow); + if (isSelected()) + pen.setColor(Qt::red); + const int penWidth = 1; + pen.setWidth(penWidth); + painter->setPen(pen); + painter->drawRect(QRectF(0, 0, translatedSize.width() + penWidth, translatedSize.height() - penWidth)); } + painter->restore(); painter->restore();