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 9022a2cb7..7d50e8359 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 @@ -22,6 +22,7 @@ public: CardDatabaseDisplayModel *databaseDisplayModel; public slots: + void showSearchSyntaxHelp(); CardInfoPtr currentCardInfo() const; void setFilterTree(FilterTree *filterTree); void clearAllDatabaseFilters(); @@ -42,7 +43,6 @@ private: QWidget *centralWidget; private slots: - void showSearchSyntaxHelp(); void retranslateUi(); void updateSearch(const QString &search); void updateCard(const QModelIndex ¤t, const QModelIndex &); 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 f5dc5dc19..4c6a29d32 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 @@ -6,6 +6,7 @@ #include "../../../../game/filters/filter_tree_model.h" #include "../../../../settings/cache_settings.h" #include "../../../../utility/card_info_comparator.h" +#include "../../pixel_map_generator.h" #include "../cards/card_info_picture_with_text_overlay_widget.h" #include "../quick_settings/settings_button_widget.h" #include "visual_database_display_color_filter_widget.h" @@ -36,8 +37,6 @@ VisualDatabaseDisplayWidget::VisualDatabaseDisplayWidget(QWidget *parent, mainLayout = new QVBoxLayout(this); setLayout(mainLayout); - auto quickFilterWidget = new SettingsButtonWidget(this); - searchContainer = new QWidget(this); searchLayout = new QHBoxLayout(searchContainer); searchContainer->setLayout(searchLayout); @@ -46,8 +45,8 @@ VisualDatabaseDisplayWidget::VisualDatabaseDisplayWidget(QWidget *parent, searchEdit->setObjectName("searchEdit"); searchEdit->setPlaceholderText(tr("Search by card name (or search expressions)")); searchEdit->setClearButtonEnabled(true); - // searchEdit->addAction(loadColorAdjustedPixmap("theme:icons/search"), QLineEdit::LeadingPosition); - // auto help = searchEdit->addAction(QPixmap("theme:icons/info"), QLineEdit::TrailingPosition); + searchEdit->addAction(loadColorAdjustedPixmap("theme:icons/search"), QLineEdit::LeadingPosition); + auto help = searchEdit->addAction(QPixmap("theme:icons/info"), QLineEdit::TrailingPosition); searchEdit->installEventFilter(&searchKeySignals); setFocusProxy(searchEdit); @@ -57,24 +56,6 @@ VisualDatabaseDisplayWidget::VisualDatabaseDisplayWidget(QWidget *parent, filterModel->setObjectName("filterModel"); databaseDisplayModel->setFilterTree(filterModel->filterTree()); - auto saveLoadWidget = - new VisualDatabaseDisplayFilterSaveLoadWidget(this, filterModel, "/home/ascor/Cockatrice_presets/"); - quickFilterWidget->addSettingsWidget(saveLoadWidget); - - auto nameFilterWidget = new VisualDatabaseDisplayNameFilterWidget(this, deckEditor, filterModel); - quickFilterWidget->addSettingsWidget(nameFilterWidget); - - auto mainTypeFilterWidget = new VisualDatabaseDisplayMainTypeFilterWidget(this, filterModel); - quickFilterWidget->addSettingsWidget(mainTypeFilterWidget); - - auto subTypeFilterWidget = new VisualDatabaseDisplaySubTypeFilterWidget(this, filterModel); - quickFilterWidget->addSettingsWidget(subTypeFilterWidget); - - auto setFilterWidget = new VisualDatabaseDisplaySetFilterWidget(this, filterModel); - quickFilterWidget->addSettingsWidget(setFilterWidget); - - colorFilterWidget = new VisualDatabaseDisplayColorFilterWidget(this, filterModel); - connect(filterModel, &FilterTreeModel::layoutChanged, this, &VisualDatabaseDisplayWidget::searchModelChanged); searchKeySignals.setObjectName("searchKeySignals"); @@ -87,7 +68,8 @@ VisualDatabaseDisplayWidget::VisualDatabaseDisplayWidget(QWidget *parent, connect(&searchKeySignals, SIGNAL(onCtrlAltEnter()), this, SLOT(actAddCardToSideboard())); connect(&searchKeySignals, SIGNAL(onCtrlEnter()), this, SLOT(actAddCardToSideboard())); connect(&searchKeySignals, SIGNAL(onCtrlC()), this, SLOT(copyDatabaseCellContents()));*/ - // connect(help, &QAction::triggered, this, &DeckEditorDatabaseDisplayWidget::showSearchSyntaxHelp); + connect(help, &QAction::triggered, deckEditor->databaseDisplayDockWidget, + &DeckEditorDatabaseDisplayWidget::showSearchSyntaxHelp); /*databaseModel = new CardDatabaseModel(CardDatabaseManager::getInstance(), true, this); databaseModel->setObjectName("databaseModel"); @@ -112,6 +94,23 @@ VisualDatabaseDisplayWidget::VisualDatabaseDisplayWidget(QWidget *parent, searchEdit->setTreeView(databaseView); + colorFilterWidget = new VisualDatabaseDisplayColorFilterWidget(this, filterModel); + + quickFilterWidget = new SettingsButtonWidget(this); + + saveLoadWidget = + new VisualDatabaseDisplayFilterSaveLoadWidget(this, filterModel, "/home/ascor/Cockatrice_presets/"); + nameFilterWidget = new VisualDatabaseDisplayNameFilterWidget(this, deckEditor, filterModel); + mainTypeFilterWidget = new VisualDatabaseDisplayMainTypeFilterWidget(this, filterModel); + subTypeFilterWidget = new VisualDatabaseDisplaySubTypeFilterWidget(this, filterModel); + setFilterWidget = new VisualDatabaseDisplaySetFilterWidget(this, filterModel); + + quickFilterWidget->addSettingsWidget(saveLoadWidget); + quickFilterWidget->addSettingsWidget(nameFilterWidget); + quickFilterWidget->addSettingsWidget(mainTypeFilterWidget); + quickFilterWidget->addSettingsWidget(subTypeFilterWidget); + quickFilterWidget->addSettingsWidget(setFilterWidget); + searchLayout->addWidget(colorFilterWidget); searchLayout->addWidget(quickFilterWidget); searchLayout->addWidget(searchEdit); 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 6d1f34ed0..85d730ae3 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 @@ -14,6 +14,11 @@ #include "../general/layout_containers/flow_widget.h" #include "../general/layout_containers/overlap_control_widget.h" #include "visual_database_display_color_filter_widget.h" +#include "visual_database_display_filter_save_load_widget.h" +#include "visual_database_display_main_type_filter_widget.h" +#include "visual_database_display_name_filter_widget.h" +#include "visual_database_display_set_filter_widget.h" +#include "visual_database_display_sub_type_filter_widget.h" #include #include @@ -64,6 +69,12 @@ protected slots: void updateSearch(const QString &search); private: + SettingsButtonWidget *quickFilterWidget; + VisualDatabaseDisplayFilterSaveLoadWidget *saveLoadWidget; + VisualDatabaseDisplayNameFilterWidget *nameFilterWidget; + VisualDatabaseDisplayMainTypeFilterWidget *mainTypeFilterWidget; + VisualDatabaseDisplaySubTypeFilterWidget *subTypeFilterWidget; + VisualDatabaseDisplaySetFilterWidget *setFilterWidget; KeySignals searchKeySignals; AbstractTabDeckEditor *deckEditor; CardDatabaseModel *databaseModel; @@ -73,9 +84,9 @@ private: QVBoxLayout *mainLayout; QScrollArea *scrollArea; FlowWidget *flowWidget; - QWidget *overlap_categories; - QVBoxLayout *overlap_categories_layout; - OverlapControlWidget *overlap_control_widget; + QWidget *overlapCategories; + QVBoxLayout *overlapCategoriesLayout; + OverlapControlWidget *overlapControlWidget; CardSizeWidget *cardSizeWidget; QWidget *container; QTimer *debounceTimer;