use QSet instead of QStringList

This commit is contained in:
RickyRister 2025-04-19 01:17:36 -07:00
parent 99fb1b4690
commit 86ed7c1188
2 changed files with 11 additions and 9 deletions

View file

@ -64,13 +64,13 @@ void VisualDeckStorageTagFilterWidget::filterDecksBySelectedTags(const QList<Dec
void VisualDeckStorageTagFilterWidget::refreshTags()
{
QStringList allTags = gatherAllTags();
QSet<QString> allTags = gatherAllTags();
removeTagsNotInList(allTags);
addTagsIfNotPresent(allTags);
sortTags();
}
void VisualDeckStorageTagFilterWidget::removeTagsNotInList(const QStringList &tags)
void VisualDeckStorageTagFilterWidget::removeTagsNotInList(const QSet<QString> &tags)
{
// Iterate through all DeckPreviewTagDisplayWidgets
for (DeckPreviewTagDisplayWidget *tagWidget : findChildren<DeckPreviewTagDisplayWidget *>()) {
@ -83,7 +83,7 @@ void VisualDeckStorageTagFilterWidget::removeTagsNotInList(const QStringList &ta
}
}
void VisualDeckStorageTagFilterWidget::addTagsIfNotPresent(const QStringList &tags)
void VisualDeckStorageTagFilterWidget::addTagsIfNotPresent(const QSet<QString> &tags)
{
for (const QString &tag : tags) {
addTagIfNotPresent(tag);
@ -136,14 +136,16 @@ void VisualDeckStorageTagFilterWidget::sortTags()
}
}
QStringList VisualDeckStorageTagFilterWidget::gatherAllTags() const
QSet<QString> VisualDeckStorageTagFilterWidget::gatherAllTags() const
{
QStringList allTags;
QSet<QString> allTags;
QList<DeckPreviewWidget *> deckWidgets = parent->findChildren<DeckPreviewWidget *>();
for (DeckPreviewWidget *widget : deckWidgets) {
if (widget->checkVisibility()) {
allTags << widget->deckLoader->getTags();
for (const QString &tag : widget->deckLoader->getTags()) {
allTags.insert(tag);
}
}
}
return allTags;

View file

@ -12,9 +12,9 @@ class VisualDeckStorageTagFilterWidget : public QWidget
VisualDeckStorageWidget *parent;
QStringList gatherAllTags() const;
void removeTagsNotInList(const QStringList &tags);
void addTagsIfNotPresent(const QStringList &tags);
QSet<QString> gatherAllTags() const;
void removeTagsNotInList(const QSet<QString> &tags);
void addTagsIfNotPresent(const QSet<QString> &tags);
void addTagIfNotPresent(const QString &tag);
void sortTags();