mirror of
https://github.com/Cockatrice/Cockatrice.git
synced 2026-06-10 08:14:47 -07:00
[TabDeckEditor] Refactor: pass nullable deck model into filter widget (#6969)
This commit is contained in:
parent
29cc622ce3
commit
0da2ac4087
7 changed files with 19 additions and 22 deletions
|
|
@ -38,7 +38,7 @@ TabDeckEditorVisualTabWidget::TabDeckEditorVisualTabWidget(QWidget *parent,
|
|||
&TabDeckEditorVisualTabWidget::actAddCard);
|
||||
|
||||
visualDatabaseDisplay =
|
||||
new VisualDatabaseDisplayWidget(this, deckEditor, _cardDatabaseModel, _cardDatabaseDisplayModel);
|
||||
new VisualDatabaseDisplayWidget(this, deckEditor, _cardDatabaseModel, _cardDatabaseDisplayModel, deckModel);
|
||||
visualDatabaseDisplay->setObjectName("visualDatabaseView");
|
||||
connect(visualDatabaseDisplay, &VisualDatabaseDisplayWidget::cardHoveredDatabaseDisplay, this,
|
||||
&TabDeckEditorVisualTabWidget::onCardChangedDatabaseDisplay);
|
||||
|
|
|
|||
|
|
@ -4,9 +4,10 @@
|
|||
|
||||
#include <QGroupBox>
|
||||
|
||||
VisualDatabaseDisplayFilterToolbarWidget::VisualDatabaseDisplayFilterToolbarWidget(VisualDatabaseDisplayWidget *_parent)
|
||||
VisualDatabaseDisplayFilterToolbarWidget::VisualDatabaseDisplayFilterToolbarWidget(VisualDatabaseDisplayWidget *_parent,
|
||||
DeckListModel *deckListModel)
|
||||
: FlowWidget(_parent, Qt::Horizontal, Qt::ScrollBarAlwaysOff, Qt::ScrollBarAlwaysOff),
|
||||
visualDatabaseDisplay(_parent)
|
||||
visualDatabaseDisplay(_parent), deckListModel(deckListModel)
|
||||
{
|
||||
connect(this, &VisualDatabaseDisplayFilterToolbarWidget::searchModelChanged, visualDatabaseDisplay,
|
||||
&VisualDatabaseDisplayWidget::onSearchModelChanged);
|
||||
|
|
@ -97,8 +98,7 @@ void VisualDatabaseDisplayFilterToolbarWidget::initialize()
|
|||
auto filterModel = visualDatabaseDisplay->getFilterModel();
|
||||
|
||||
saveLoadWidget = new VisualDatabaseDisplayFilterSaveLoadWidget(this, filterModel);
|
||||
nameFilterWidget =
|
||||
new VisualDatabaseDisplayNameFilterWidget(this, visualDatabaseDisplay->getDeckEditor(), filterModel);
|
||||
nameFilterWidget = new VisualDatabaseDisplayNameFilterWidget(this, filterModel, deckListModel);
|
||||
mainTypeFilterWidget = new VisualDatabaseDisplayMainTypeFilterWidget(this, filterModel);
|
||||
formatLegalityWidget = new VisualDatabaseDisplayFormatLegalityFilterWidget(this, filterModel);
|
||||
subTypeFilterWidget = new VisualDatabaseDisplaySubTypeFilterWidget(this, filterModel);
|
||||
|
|
|
|||
|
|
@ -18,12 +18,14 @@ signals:
|
|||
void searchModelChanged();
|
||||
|
||||
public:
|
||||
explicit VisualDatabaseDisplayFilterToolbarWidget(VisualDatabaseDisplayWidget *parent);
|
||||
explicit VisualDatabaseDisplayFilterToolbarWidget(VisualDatabaseDisplayWidget *parent,
|
||||
DeckListModel *deckListModel = nullptr);
|
||||
void initialize();
|
||||
void retranslateUi();
|
||||
|
||||
private:
|
||||
VisualDatabaseDisplayWidget *visualDatabaseDisplay;
|
||||
DeckListModel *deckListModel;
|
||||
|
||||
QGroupBox *sortGroupBox;
|
||||
QLabel *sortByLabel;
|
||||
|
|
|
|||
|
|
@ -8,9 +8,9 @@
|
|||
#include <QHBoxLayout>
|
||||
|
||||
VisualDatabaseDisplayNameFilterWidget::VisualDatabaseDisplayNameFilterWidget(QWidget *parent,
|
||||
AbstractTabDeckEditor *_deckEditor,
|
||||
FilterTreeModel *_filterModel)
|
||||
: QWidget(parent), deckEditor(_deckEditor), filterModel(_filterModel)
|
||||
FilterTreeModel *_filterModel,
|
||||
DeckListModel *deckListModel)
|
||||
: QWidget(parent), filterModel(_filterModel), deckListModel(deckListModel)
|
||||
{
|
||||
setMinimumWidth(300);
|
||||
setMaximumHeight(300);
|
||||
|
|
@ -62,8 +62,6 @@ void VisualDatabaseDisplayNameFilterWidget::retranslateUi()
|
|||
|
||||
void VisualDatabaseDisplayNameFilterWidget::actLoadFromDeck()
|
||||
{
|
||||
DeckListModel *deckListModel = deckEditor->deckStateManager->getModel();
|
||||
|
||||
if (!deckListModel) {
|
||||
return;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -21,8 +21,8 @@ class VisualDatabaseDisplayNameFilterWidget : public QWidget
|
|||
Q_OBJECT
|
||||
public:
|
||||
explicit VisualDatabaseDisplayNameFilterWidget(QWidget *parent,
|
||||
AbstractTabDeckEditor *deckEditor,
|
||||
FilterTreeModel *filterModel);
|
||||
FilterTreeModel *filterModel,
|
||||
DeckListModel *deckListModel = nullptr);
|
||||
|
||||
void createNameFilter(const QString &name);
|
||||
void removeNameFilter(const QString &name);
|
||||
|
|
@ -34,8 +34,8 @@ public slots:
|
|||
void retranslateUi();
|
||||
|
||||
private:
|
||||
AbstractTabDeckEditor *deckEditor;
|
||||
FilterTreeModel *filterModel;
|
||||
DeckListModel *deckListModel;
|
||||
QVBoxLayout *layout;
|
||||
QLineEdit *searchBox;
|
||||
FlowWidget *flowWidget;
|
||||
|
|
|
|||
|
|
@ -25,7 +25,8 @@
|
|||
VisualDatabaseDisplayWidget::VisualDatabaseDisplayWidget(QWidget *parent,
|
||||
AbstractTabDeckEditor *_deckEditor,
|
||||
CardDatabaseModel *database_model,
|
||||
CardDatabaseDisplayModel *database_display_model)
|
||||
CardDatabaseDisplayModel *database_display_model,
|
||||
DeckListModel *deckListModel)
|
||||
: QWidget(parent), deckEditor(_deckEditor), databaseModel(database_model),
|
||||
databaseDisplayModel(database_display_model)
|
||||
{
|
||||
|
|
@ -109,7 +110,7 @@ VisualDatabaseDisplayWidget::VisualDatabaseDisplayWidget(QWidget *parent,
|
|||
|
||||
colorFilterWidget = new VisualDatabaseDisplayColorFilterWidget(this, filterModel);
|
||||
|
||||
filterContainer = new VisualDatabaseDisplayFilterToolbarWidget(this);
|
||||
filterContainer = new VisualDatabaseDisplayFilterToolbarWidget(this, deckListModel);
|
||||
|
||||
clearFilterWidget = new QToolButton();
|
||||
clearFilterWidget->setFixedSize(32, 32);
|
||||
|
|
|
|||
|
|
@ -36,7 +36,8 @@ public:
|
|||
explicit VisualDatabaseDisplayWidget(QWidget *parent,
|
||||
AbstractTabDeckEditor *deckEditor,
|
||||
CardDatabaseModel *database_model,
|
||||
CardDatabaseDisplayModel *database_display_model);
|
||||
CardDatabaseDisplayModel *database_display_model,
|
||||
DeckListModel *deckListModel = nullptr);
|
||||
void retranslateUi();
|
||||
|
||||
void adjustCardsPerPage();
|
||||
|
|
@ -47,11 +48,6 @@ public:
|
|||
void sortCardList(const QStringList &properties, Qt::SortOrder order) const;
|
||||
void setDeckList(const DeckList &new_deck_list_model);
|
||||
|
||||
AbstractTabDeckEditor *getDeckEditor()
|
||||
{
|
||||
return deckEditor;
|
||||
}
|
||||
|
||||
CardDatabaseDisplayModel *getDatabaseDisplayModel()
|
||||
{
|
||||
return databaseDisplayModel;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue