diff --git a/cockatrice/src/game/cards/card_list.cpp b/cockatrice/src/game/cards/card_list.cpp index a4499a98c..6261e5a9a 100644 --- a/cockatrice/src/game/cards/card_list.cpp +++ b/cockatrice/src/game/cards/card_list.cpp @@ -146,6 +146,8 @@ std::function CardList::getExtractorFor(SortOption option) return [](CardItem *c) { return c->getInfo() ? c->getInfo()->getPowTough().rightJustified(10, '0') : ""; }; case SortBySet: return [](CardItem *c) { return c->getInfo() ? c->getInfo()->getSetsNames() : ""; }; + case SortByPrinting: + return [](CardItem *c) { return c->getProviderId(); }; } // this line should never be reached diff --git a/cockatrice/src/game/cards/card_list.h b/cockatrice/src/game/cards/card_list.h index 5b44764d5..503cb6c17 100644 --- a/cockatrice/src/game/cards/card_list.h +++ b/cockatrice/src/game/cards/card_list.h @@ -28,7 +28,8 @@ public: SortByManaCost, SortByColors, SortByPt, - SortBySet + SortBySet, + SortByPrinting }; CardList(bool _contentsKnown); CardItem *findCard(const int cardId) const; diff --git a/cockatrice/src/game/zones/view_zone.cpp b/cockatrice/src/game/zones/view_zone.cpp index 298f37f57..16ffb2587 100644 --- a/cockatrice/src/game/zones/view_zone.cpp +++ b/cockatrice/src/game/zones/view_zone.cpp @@ -164,6 +164,9 @@ void ZoneViewZone::reorganizeCards() if (sortBy != CardList::SortByName) { sortOptions << CardList::SortByName; } + + // group printings together + sortOptions << CardList::SortByPrinting; } cardsToDisplay.sortBy(sortOptions);