This commit is contained in:
RickyRister 2025-01-15 20:01:20 -08:00
parent bfe19da56b
commit 976787ed1c
2 changed files with 27 additions and 9 deletions

View file

@ -53,13 +53,9 @@ DeckViewContainer::DeckViewContainer(int _playerId, TabGame *parent)
loadLocalButton = new QPushButton; loadLocalButton = new QPushButton;
loadRemoteButton = new QPushButton; loadRemoteButton = new QPushButton;
unloadDeckButton = new QPushButton; unloadDeckButton = new QPushButton;
unloadDeckButton->setEnabled(false);
readyStartButton = new ToggleButton; readyStartButton = new ToggleButton;
readyStartButton->setEnabled(false);
forceStartGameButton = new QPushButton; forceStartGameButton = new QPushButton;
forceStartGameButton->setEnabled(parent->isHost());
sideboardLockButton = new ToggleButton; sideboardLockButton = new ToggleButton;
sideboardLockButton->setEnabled(false);
connect(loadLocalButton, SIGNAL(clicked()), this, SLOT(loadLocalDeck())); connect(loadLocalButton, SIGNAL(clicked()), this, SLOT(loadLocalDeck()));
connect(readyStartButton, SIGNAL(clicked()), this, SLOT(readyStart())); connect(readyStartButton, SIGNAL(clicked()), this, SLOT(readyStart()));
@ -82,7 +78,6 @@ DeckViewContainer::DeckViewContainer(int _playerId, TabGame *parent)
buttonHBox->addWidget(sideboardLockButton); buttonHBox->addWidget(sideboardLockButton);
if (forceStartGameButton->isEnabled()) { if (forceStartGameButton->isEnabled()) {
buttonHBox->addWidget(forceStartGameButton); buttonHBox->addWidget(forceStartGameButton);
forceStartGameButton->setEnabled(false);
} }
buttonHBox->setContentsMargins(0, 0, 0, 0); buttonHBox->setContentsMargins(0, 0, 0, 0);
buttonHBox->addStretch(); buttonHBox->addStretch();
@ -90,7 +85,6 @@ DeckViewContainer::DeckViewContainer(int _playerId, TabGame *parent)
deckView = new DeckView; deckView = new DeckView;
connect(deckView, SIGNAL(newCardAdded(AbstractCardItem *)), this, SIGNAL(newCardAdded(AbstractCardItem *))); connect(deckView, SIGNAL(newCardAdded(AbstractCardItem *)), this, SIGNAL(newCardAdded(AbstractCardItem *)));
connect(deckView, SIGNAL(sideboardPlanChanged()), this, SLOT(sideboardPlanChanged())); connect(deckView, SIGNAL(sideboardPlanChanged()), this, SLOT(sideboardPlanChanged()));
deckView->setVisible(false);
visualDeckStorageWidget = new VisualDeckStorageWidget(this); visualDeckStorageWidget = new VisualDeckStorageWidget(this);
connect(visualDeckStorageWidget, &VisualDeckStorageWidget::deckPreviewDoubleClicked, this, connect(visualDeckStorageWidget, &VisualDeckStorageWidget::deckPreviewDoubleClicked, this,
@ -106,6 +100,8 @@ DeckViewContainer::DeckViewContainer(int _playerId, TabGame *parent)
retranslateUi(); retranslateUi();
connect(&SettingsCache::instance().shortcuts(), SIGNAL(shortCutChanged()), this, SLOT(refreshShortcuts())); connect(&SettingsCache::instance().shortcuts(), SIGNAL(shortCutChanged()), this, SLOT(refreshShortcuts()));
refreshShortcuts(); refreshShortcuts();
switchToDeckSelectView();
} }
void DeckViewContainer::retranslateUi() void DeckViewContainer::retranslateUi()
@ -118,6 +114,28 @@ void DeckViewContainer::retranslateUi()
updateSideboardLockButtonText(); updateSideboardLockButtonText();
} }
void DeckViewContainer::switchToDeckSelectView()
{
deckView->setVisible(false);
visualDeckStorageWidget->setVisible(true);
deckViewLayout->update();
unloadDeckButton->setEnabled(false);
readyStartButton->setEnabled(false);
readyStartButton->setState(false);
sideboardLockButton->setEnabled(false);
sideboardLockButton->setState(false);
forceStartGameButton->setEnabled(false);
setReadyStart(false);
}
void DeckViewContainer::switchToDeckLoadedView()
{
deckView->setVisible(true);
visualDeckStorageWidget->setVisible(false);
unloadDeckButton->setEnabled(true);
forceStartGameButton->setEnabled(parentGame->isHost());
}
void DeckViewContainer::updateSideboardLockButtonText() void DeckViewContainer::updateSideboardLockButtonText()
{ {
if (sideboardLockButton->getState()) { if (sideboardLockButton->getState()) {
@ -224,9 +242,7 @@ void DeckViewContainer::deckSelectFinished(const Response &r)
// TODO CHANGE THIS TO BE SELECTED BY UUID // TODO CHANGE THIS TO BE SELECTED BY UUID
PictureLoader::cacheCardPixmaps(CardDatabaseManager::getInstance()->getCards(newDeck.getCardList())); PictureLoader::cacheCardPixmaps(CardDatabaseManager::getInstance()->getCards(newDeck.getCardList()));
setDeck(newDeck); setDeck(newDeck);
deckView->setVisible(true); switchToDeckLoadedView();
visualDeckStorageWidget->setVisible(false);
unloadDeckButton->setEnabled(true);
} }
void DeckViewContainer::readyStart() void DeckViewContainer::readyStart()

View file

@ -51,6 +51,8 @@ private:
TabGame *parentGame; TabGame *parentGame;
int playerId; int playerId;
private slots: private slots:
void switchToDeckSelectView();
void switchToDeckLoadedView();
void loadVisualDeck(QMouseEvent *event, DeckPreviewWidget *instance); void loadVisualDeck(QMouseEvent *event, DeckPreviewWidget *instance);
void loadLocalDeck(); void loadLocalDeck();
void loadRemoteDeck(); void loadRemoteDeck();