Rework card menu handling (#6069)

* extract cardMenu from CardItem

* move cardMenu saving to TabGame

* delete TabGame::updateCardMenu

* move checking to updateCardMenu

* unset activeCard when all cards are unselected
This commit is contained in:
RickyRister 2025-08-15 02:13:28 -03:00 committed by GitHub
parent 1649f30389
commit 03bebbe4c2
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
6 changed files with 106 additions and 123 deletions

View file

@ -156,6 +156,7 @@ signals:
void sizeChanged();
void playerCountChanged();
void cardMenuUpdated(QMenu *cardMenu);
public slots:
void actUntapAll();
void actRollDie();
@ -271,7 +272,6 @@ private:
*aMoveBottomToPlayFaceDown, *aMoveBottomCardToTop, *aMoveBottomCardToGraveyard, *aMoveBottomCardToExile,
*aMoveBottomCardsToGraveyard, *aMoveBottomCardsToExile, *aDrawBottomCard, *aDrawBottomCards;
QAction *aCardMenu;
QList<QAction *> aAddCounter, aSetCounter, aRemoveCounter;
QAction *aPlay, *aPlayFacedown, *aHide, *aTap, *aDoesntUntap, *aAttach, *aUnattach, *aDrawArrow, *aSetPT, *aResetPT,
*aIncP, *aDecP, *aIncT, *aDecT, *aIncPT, *aDecPT, *aFlowP, *aFlowT, *aSetAnnotation, *aFlip, *aPeek, *aClone,
@ -326,6 +326,8 @@ private:
const QString &avalue,
bool allCards,
EventProcessingOptions options);
QMenu *createMoveMenu() const;
QMenu *createPtMenu() const;
void addRelatedCardActions(const CardItem *card, QMenu *cardMenu);
void addRelatedCardView(const CardItem *card, QMenu *cardMenu);
void createCard(const CardItem *sourceCard,
@ -484,9 +486,8 @@ public:
{
return arrows;
}
void setCardMenu(QMenu *menu);
QMenu *getCardMenu() const;
void updateCardMenu(const CardItem *card);
QMenu *updateCardMenu(const CardItem *card);
QMenu *createCardMenu(const CardItem *card);
bool getActive() const
{
return active;