From 1c2ddccb463ee7e614c563e90b39efb0e34efc96 Mon Sep 17 00:00:00 2001 From: Fabio Bas Date: Tue, 7 Jul 2015 17:56:11 +0200 Subject: [PATCH] Order cards by name in deck-load screen; fix #247 --- cockatrice/src/deckview.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/cockatrice/src/deckview.cpp b/cockatrice/src/deckview.cpp index 836aa533..6093af35 100644 --- a/cockatrice/src/deckview.cpp +++ b/cockatrice/src/deckview.cpp @@ -241,6 +241,13 @@ QSizeF DeckViewCardContainer::calculateBoundingRect(const QList return QSizeF(getCardTypeTextWidth() + totalWidth, totalHeight + separatorY + paddingY); } +bool sortCardsByName(DeckViewCard * c1, DeckViewCard * c2) +{ + if (c1 && c2) + return c1->getName() < c2->getName(); + return false; +} + void DeckViewCardContainer::rearrangeItems(const QList > &rowsAndCols) { currentRowsAndCols = rowsAndCols; @@ -257,6 +264,7 @@ void DeckViewCardContainer::rearrangeItems(const QList > &rowsAn QList cardTypeList = cardsByType.uniqueKeys(); QList row = cardsByType.values(cardTypeList[i]); + qSort( row.begin(), row.end(), sortCardsByName); for (int j = 0; j < row.size(); ++j) { DeckViewCard *card = row[j]; card->setPos(x + (j % tempCols) * CARD_WIDTH, yUntilNow + (j / tempCols) * CARD_HEIGHT);