From ec198c33ca4ad3aa51566584ea1c0cc715db07c3 Mon Sep 17 00:00:00 2001 From: Matt Lowe Date: Sun, 25 Jan 2015 00:34:41 +0100 Subject: [PATCH] Fixed shuffle issue when closing a view we save the current settings. I added a check to only update the shuffle settings if the zone we are closing can be shuffled. --- cockatrice/src/zoneviewwidget.cpp | 5 +++-- cockatrice/src/zoneviewwidget.h | 1 + 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/cockatrice/src/zoneviewwidget.cpp b/cockatrice/src/zoneviewwidget.cpp index 3d02836a..13fb6962 100644 --- a/cockatrice/src/zoneviewwidget.cpp +++ b/cockatrice/src/zoneviewwidget.cpp @@ -57,7 +57,7 @@ void TitleLabel::mouseMoveEvent(QGraphicsSceneMouseEvent *event) } ZoneViewWidget::ZoneViewWidget(Player *_player, CardZone *_origZone, int numberCards, bool _revealZone, bool _writeableRevealZone, const QList &cardList) - : QGraphicsWidget(0, Qt::Tool | Qt::FramelessWindowHint), player(_player) + : QGraphicsWidget(0, Qt::Tool | Qt::FramelessWindowHint), player(_player), canBeShuffled(_origZone->getIsShufflable()) { setAcceptHoverEvents(true); setAttribute(Qt::WA_DeleteOnClose); @@ -227,7 +227,8 @@ void ZoneViewWidget::closeEvent(QCloseEvent *event) } if (shuffleCheckBox.isChecked()) player->sendGameCommand(Command_Shuffle()); - settingsCache->setZoneViewShuffle(shuffleCheckBox.isChecked()); + if (canBeShuffled) + settingsCache->setZoneViewShuffle(shuffleCheckBox.isChecked()); emit closePressed(this); deleteLater(); event->accept(); diff --git a/cockatrice/src/zoneviewwidget.h b/cockatrice/src/zoneviewwidget.h index d8bcc916..3ec07860 100644 --- a/cockatrice/src/zoneviewwidget.h +++ b/cockatrice/src/zoneviewwidget.h @@ -48,6 +48,7 @@ private: QCheckBox shuffleCheckBox; QCheckBox pileViewCheckBox; + bool canBeShuffled; int extraHeight; Player *player; signals: