diff --git a/cockatrice/src/client/tabs/tab_generic_deck_editor.cpp b/cockatrice/src/client/tabs/tab_generic_deck_editor.cpp index ed275317a..807993e7d 100644 --- a/cockatrice/src/client/tabs/tab_generic_deck_editor.cpp +++ b/cockatrice/src/client/tabs/tab_generic_deck_editor.cpp @@ -528,4 +528,9 @@ bool TabGenericDeckEditor::isBlankNewDeck() const { DeckLoader *const deck = deckDockWidget->deckModel->getDeckList(); return !modified && deck->getLastFileName().isEmpty() && deck->getLastRemoteDeckId() == -1; +} + +void TabGenericDeckEditor::filterTreeChanged(FilterTree *filterTree) +{ + databaseDisplayDockWidget->setFilterTree(filterTree); } \ No newline at end of file diff --git a/cockatrice/src/client/tabs/tab_generic_deck_editor.h b/cockatrice/src/client/tabs/tab_generic_deck_editor.h index ea910ac3c..d60a234ae 100644 --- a/cockatrice/src/client/tabs/tab_generic_deck_editor.h +++ b/cockatrice/src/client/tabs/tab_generic_deck_editor.h @@ -130,6 +130,9 @@ public slots: void actDecrementCardFromSideboard(CardInfoPtr info); void actDecrementCardFromSideboardFromDatabase(); void actOpenRecent(const QString &fileName); + + void filterTreeChanged(FilterTree *filterTree); + void closeRequest(bool forced = false) override; virtual void showPrintingSelector() = 0; virtual void dockTopLevelChanged(bool topLevel) = 0; diff --git a/cockatrice/src/client/ui/widgets/deck_editor/deck_editor_database_display_widget.cpp b/cockatrice/src/client/ui/widgets/deck_editor/deck_editor_database_display_widget.cpp index 2dc82e5e2..acb75e0ea 100644 --- a/cockatrice/src/client/ui/widgets/deck_editor/deck_editor_database_display_widget.cpp +++ b/cockatrice/src/client/ui/widgets/deck_editor/deck_editor_database_display_widget.cpp @@ -60,6 +60,7 @@ DeckEditorDatabaseDisplayWidget::DeckEditorDatabaseDisplayWidget(QWidget *parent databaseModel = new CardDatabaseModel(CardDatabaseManager::getInstance(), true, this); databaseModel->setObjectName("databaseModel"); databaseDisplayModel = new CardDatabaseDisplayModel(this); + databaseDisplayModel->setObjectName("databaseDisplayModel"); databaseDisplayModel->setSourceModel(databaseModel); databaseDisplayModel->setFilterKeyColumn(0); @@ -228,6 +229,11 @@ void DeckEditorDatabaseDisplayWidget::showSearchSyntaxHelp() browser->show(); } +void DeckEditorDatabaseDisplayWidget::setFilterTree(FilterTree *filterTree) +{ + databaseDisplayModel->setFilterTree(filterTree); +} + void DeckEditorDatabaseDisplayWidget::retranslateUi() { aAddCard->setText(tr("Add card to &maindeck")); diff --git a/cockatrice/src/client/ui/widgets/deck_editor/deck_editor_database_display_widget.h b/cockatrice/src/client/ui/widgets/deck_editor/deck_editor_database_display_widget.h index 25d4e75bb..819ab91ea 100644 --- a/cockatrice/src/client/ui/widgets/deck_editor/deck_editor_database_display_widget.h +++ b/cockatrice/src/client/ui/widgets/deck_editor/deck_editor_database_display_widget.h @@ -23,6 +23,7 @@ public: public slots: CardInfoPtr currentCardInfo() const; + void setFilterTree(FilterTree *filterTree); private: KeySignals searchKeySignals; diff --git a/cockatrice/src/client/ui/widgets/deck_editor/deck_editor_filter_dock_widget.cpp b/cockatrice/src/client/ui/widgets/deck_editor/deck_editor_filter_dock_widget.cpp index ab9574927..fc22d2bc0 100644 --- a/cockatrice/src/client/ui/widgets/deck_editor/deck_editor_filter_dock_widget.cpp +++ b/cockatrice/src/client/ui/widgets/deck_editor/deck_editor_filter_dock_widget.cpp @@ -24,8 +24,7 @@ void DeckEditorFilterDockWidget::createFiltersDock() { filterModel = new FilterTreeModel(); filterModel->setObjectName("filterModel"); - deckEditor->databaseDisplayDockWidget->databaseDisplayModel->setFilterTree(filterModel->filterTree()); - deckEditor->databaseDisplayDockWidget->databaseDisplayModel->setObjectName("databaseDisplayModel"); + deckEditor->filterTreeChanged(filterModel->filterTree()); filterView = new QTreeView; filterView->setObjectName("filterView"); filterView->setModel(filterModel);