mirror of
https://github.com/Cockatrice/Cockatrice.git
synced 2026-04-25 08:03:58 -05:00
Refactor banner card ComboBox (#5947)
This commit is contained in:
parent
b270562a44
commit
46643065ef
|
|
@ -303,11 +303,7 @@ void DeckEditorDeckDockWidget::updateBannerCardComboBox()
|
|||
});
|
||||
|
||||
for (const auto &pair : pairList) {
|
||||
QVariantMap dataMap;
|
||||
dataMap["name"] = pair.first;
|
||||
dataMap["uuid"] = pair.second;
|
||||
|
||||
bannerCardComboBox->addItem(pair.first, dataMap);
|
||||
bannerCardComboBox->addItem(pair.first, QVariant::fromValue(pair));
|
||||
}
|
||||
|
||||
// Try to restore the previous selection by finding the currentText
|
||||
|
|
@ -315,7 +311,7 @@ void DeckEditorDeckDockWidget::updateBannerCardComboBox()
|
|||
if (restoredIndex != -1) {
|
||||
bannerCardComboBox->setCurrentIndex(restoredIndex);
|
||||
if (deckModel->getDeckList()->getBannerCard().second !=
|
||||
bannerCardComboBox->itemData(bannerCardComboBox->currentIndex()).toMap()["uuid"].toString()) {
|
||||
bannerCardComboBox->currentData().value<QPair<QString, QString>>().second) {
|
||||
setBannerCard(restoredIndex);
|
||||
}
|
||||
} else {
|
||||
|
|
@ -335,9 +331,8 @@ void DeckEditorDeckDockWidget::updateBannerCardComboBox()
|
|||
|
||||
void DeckEditorDeckDockWidget::setBannerCard(int /* changedIndex */)
|
||||
{
|
||||
QVariantMap itemData = bannerCardComboBox->itemData(bannerCardComboBox->currentIndex()).toMap();
|
||||
deckModel->getDeckList()->setBannerCard(
|
||||
QPair<QString, QString>(itemData["name"].toString(), itemData["uuid"].toString()));
|
||||
auto cardAndId = bannerCardComboBox->currentData().value<QPair<QString, QString>>();
|
||||
deckModel->getDeckList()->setBannerCard(cardAndId);
|
||||
emit deckModified();
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -282,11 +282,11 @@ void DeckPreviewWidget::updateBannerCardComboBox()
|
|||
|
||||
void DeckPreviewWidget::setBannerCard(int /* changedIndex */)
|
||||
{
|
||||
QVariant itemData = bannerCardComboBox->itemData(bannerCardComboBox->currentIndex());
|
||||
deckLoader->setBannerCard(QPair<QString, QString>(bannerCardComboBox->currentText(), itemData.toString()));
|
||||
auto nameAndId = bannerCardComboBox->currentData().value<QPair<QString, QString>>();
|
||||
deckLoader->setBannerCard(nameAndId);
|
||||
deckLoader->saveToFile(filePath, DeckLoader::getFormatFromName(filePath));
|
||||
bannerCardDisplayWidget->setCard(CardDatabaseManager::getInstance()->getCardByNameAndProviderId(
|
||||
bannerCardComboBox->currentText(), itemData.toString()));
|
||||
bannerCardDisplayWidget->setCard(
|
||||
CardDatabaseManager::getInstance()->getCardByNameAndProviderId(nameAndId.first, nameAndId.second));
|
||||
}
|
||||
|
||||
void DeckPreviewWidget::imageClickedEvent(QMouseEvent *event, DeckPreviewCardPictureWidget *instance)
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user