diff --git a/cockatrice/src/client/ui/widgets/visual_database_display/visual_database_display_filter_save_load_widget.cpp b/cockatrice/src/client/ui/widgets/visual_database_display/visual_database_display_filter_save_load_widget.cpp index 699b8276f..7c1e4903f 100644 --- a/cockatrice/src/client/ui/widgets/visual_database_display/visual_database_display_filter_save_load_widget.cpp +++ b/cockatrice/src/client/ui/widgets/visual_database_display/visual_database_display_filter_save_load_widget.cpp @@ -21,11 +21,10 @@ VisualDatabaseDisplayFilterSaveLoadWidget::VisualDatabaseDisplayFilterSaveLoadWi // Input for filter filename filenameInput = new QLineEdit(this); - filenameInput->setPlaceholderText(tr("Enter filename...")); layout->addWidget(filenameInput); // Save button - saveButton = new QPushButton(tr("Save Filter"), this); + saveButton = new QPushButton(this); layout->addWidget(saveButton); connect(saveButton, &QPushButton::clicked, this, &VisualDatabaseDisplayFilterSaveLoadWidget::saveFilter); @@ -34,6 +33,13 @@ VisualDatabaseDisplayFilterSaveLoadWidget::VisualDatabaseDisplayFilterSaveLoadWi layout->addWidget(fileListWidget); refreshFilterList(); // Populate the file list on startup + retranslateUi(); +} + +void VisualDatabaseDisplayFilterSaveLoadWidget::retranslateUi() +{ + saveButton->setText(tr("Save Filter")); + filenameInput->setPlaceholderText(tr("Enter filename...")); } void VisualDatabaseDisplayFilterSaveLoadWidget::saveFilter() @@ -67,7 +73,7 @@ void VisualDatabaseDisplayFilterSaveLoadWidget::saveFilter() void VisualDatabaseDisplayFilterSaveLoadWidget::loadFilter(const QString &filename) { - QString filePath = SettingsCache::instance().getFiltersPath() + "/" + filename; + QString filePath = SettingsCache::instance().getFiltersPath() + QDir::separator() + filename; QFile file(filePath); if (!file.open(QIODevice::ReadOnly)) diff --git a/cockatrice/src/client/ui/widgets/visual_database_display/visual_database_display_filter_save_load_widget.h b/cockatrice/src/client/ui/widgets/visual_database_display/visual_database_display_filter_save_load_widget.h index 7ee0cbedc..52b2af2bf 100644 --- a/cockatrice/src/client/ui/widgets/visual_database_display/visual_database_display_filter_save_load_widget.h +++ b/cockatrice/src/client/ui/widgets/visual_database_display/visual_database_display_filter_save_load_widget.h @@ -26,6 +26,9 @@ public: void refreshFilterList(); void deleteFilter(const QString &filename, QPushButton *deleteButton); +public slots: + void retranslateUi(); + private: FilterTreeModel *filterModel; diff --git a/cockatrice/src/client/ui/widgets/visual_database_display/visual_database_display_name_filter_widget.cpp b/cockatrice/src/client/ui/widgets/visual_database_display/visual_database_display_name_filter_widget.cpp index 8ac4219e0..f41375224 100644 --- a/cockatrice/src/client/ui/widgets/visual_database_display/visual_database_display_name_filter_widget.cpp +++ b/cockatrice/src/client/ui/widgets/visual_database_display/visual_database_display_name_filter_widget.cpp @@ -16,7 +16,6 @@ VisualDatabaseDisplayNameFilterWidget::VisualDatabaseDisplayNameFilterWidget(QWi setLayout(layout); searchBox = new QLineEdit(this); - searchBox->setPlaceholderText(tr("Filter by name...")); layout->addWidget(searchBox); connect(searchBox, &QLineEdit::returnPressed, this, [this]() { @@ -33,21 +32,28 @@ VisualDatabaseDisplayNameFilterWidget::VisualDatabaseDisplayNameFilterWidget(QWi layout->addWidget(flowWidget); loadFromDeckButton = new QPushButton(this); - loadFromDeckButton->setText(tr("Load from Deck")); layout->addWidget(loadFromDeckButton); connect(loadFromDeckButton, &QPushButton::clicked, this, &VisualDatabaseDisplayNameFilterWidget::actLoadFromDeck); connect(filterModel, &FilterTreeModel::layoutChanged, this, [this]() { QTimer::singleShot(100, this, &VisualDatabaseDisplayNameFilterWidget::syncWithFilterModel); }); + + retranslateUi(); +} + +void VisualDatabaseDisplayNameFilterWidget::retranslateUi() +{ + searchBox->setPlaceholderText(tr("Filter by name...")); + loadFromDeckButton->setText(tr("Load from Deck")); } void VisualDatabaseDisplayNameFilterWidget::actLoadFromDeck() { - DeckListModel *deck_list_model = deckEditor->deckDockWidget->deckModel; + DeckListModel *deckListModel = deckEditor->deckDockWidget->deckModel; - if (!deck_list_model) + if (!deckListModel) return; - DeckList *decklist = deck_list_model->getDeckList(); + DeckList *decklist = deckListModel->getDeckList(); if (!decklist) return; InnerDecklistNode *listRoot = decklist->getRoot(); diff --git a/cockatrice/src/client/ui/widgets/visual_database_display/visual_database_display_name_filter_widget.h b/cockatrice/src/client/ui/widgets/visual_database_display/visual_database_display_name_filter_widget.h index 26802b455..91ad56160 100644 --- a/cockatrice/src/client/ui/widgets/visual_database_display/visual_database_display_name_filter_widget.h +++ b/cockatrice/src/client/ui/widgets/visual_database_display/visual_database_display_name_filter_widget.h @@ -25,6 +25,9 @@ public: void updateFilterModel(); void syncWithFilterModel(); +public slots: + void retranslateUi(); + private: AbstractTabDeckEditor *deckEditor; FilterTreeModel *filterModel; diff --git a/cockatrice/src/client/ui/widgets/visual_database_display/visual_database_display_set_filter_widget.cpp b/cockatrice/src/client/ui/widgets/visual_database_display/visual_database_display_set_filter_widget.cpp index a3e014cc6..4776ee82d 100644 --- a/cockatrice/src/client/ui/widgets/visual_database_display/visual_database_display_set_filter_widget.cpp +++ b/cockatrice/src/client/ui/widgets/visual_database_display/visual_database_display_set_filter_widget.cpp @@ -80,13 +80,14 @@ void VisualDatabaseDisplaySetFilterWidget::updateSetButtonsVisibility() { QString filterText = searchBox->text().trimmed().toLower(); - for (auto it = setButtons.begin(); it != setButtons.end(); ++it) { - QString shortName = it.key().toLower(); - QString longName = it.value()->text().toLower(); - bool alwaysVisible = activeSets.contains(it.key()) && activeSets[it.key()]; + for (const QString &setName : setButtons.keys()) { + QPushButton *buttonForSet = setButtons[setName]; + QString shortName = setName.toLower(); + QString longName = buttonForSet->text().toLower(); + bool alwaysVisible = activeSets.contains(setName) && activeSets[setName]; bool visible = alwaysVisible || filterText.isEmpty() || shortName.contains(filterText) || longName.contains(filterText); - it.value()->setVisible(visible); + buttonForSet->setVisible(visible); } } @@ -181,10 +182,10 @@ void VisualDatabaseDisplaySetFilterWidget::syncWithFilterModel() } // Sync button states with selected sets - for (auto it = setButtons.begin(); it != setButtons.end(); ++it) { - bool active = selectedSets.contains(it.key()); - activeSets[it.key()] = active; - it.value()->setChecked(active); + for (const auto &key : setButtons.keys()) { + bool active = selectedSets.contains(key); + activeSets[key] = active; + setButtons[key]->setChecked(active); } } diff --git a/cockatrice/src/client/ui/widgets/visual_database_display/visual_database_display_widget.cpp b/cockatrice/src/client/ui/widgets/visual_database_display/visual_database_display_widget.cpp index a41fd0d62..f808d7034 100644 --- a/cockatrice/src/client/ui/widgets/visual_database_display/visual_database_display_widget.cpp +++ b/cockatrice/src/client/ui/widgets/visual_database_display/visual_database_display_widget.cpp @@ -230,7 +230,7 @@ void VisualDatabaseDisplayWidget::loadNextPage() if (CardInfoPtr info = CardDatabaseManager::getInstance()->getCard(name.toString())) { addCard(info); } else { - qCDebug(VisualDatabaseDisplayLog) << "Card not found in database!"; + qCDebug(VisualDatabaseDisplayLog) << "Card " << name.toString() << " not found in database!"; } } diff --git a/cockatrice/src/client/ui/widgets/visual_database_display/visual_database_display_widget.h b/cockatrice/src/client/ui/widgets/visual_database_display/visual_database_display_widget.h index 033bb856e..31d1013e1 100644 --- a/cockatrice/src/client/ui/widgets/visual_database_display/visual_database_display_widget.h +++ b/cockatrice/src/client/ui/widgets/visual_database_display/visual_database_display_widget.h @@ -92,7 +92,7 @@ private: QTimer *debounceTimer; QTimer *loadCardsTimer; - int debounceTime = 300; + int debounceTime = 300; // in Ms int currentPage = 0; // Current page index int cardsPerPage = 100; // Number of cards per page