diff options
author | Slávek Banko <slavek.banko@axis.cz> | 2017-03-21 20:34:50 +0100 |
---|---|---|
committer | Slávek Banko <slavek.banko@axis.cz> | 2017-03-21 20:37:33 +0100 |
commit | 9f2d40bba0a57d4a28f8bb47b5a5dde4e8742444 (patch) | |
tree | e5380f491a05668cd468a0071bebd7232c986264 /kpat/dealer.h | |
parent | 32b39efd3f74ce7af44d456d0016edadc7706a39 (diff) | |
download | tdegames-9f2d40bba0a57d4a28f8bb47b5a5dde4e8742444.tar.gz tdegames-9f2d40bba0a57d4a28f8bb47b5a5dde4e8742444.zip |
Fix forward classes declaration in kpat/dealer.h
This resolves FTBFS for cmake build with clang
Signed-off-by: Slávek Banko <slavek.banko@axis.cz>
Diffstat (limited to 'kpat/dealer.h')
-rw-r--r-- | kpat/dealer.h | 37 |
1 files changed, 36 insertions, 1 deletions
diff --git a/kpat/dealer.h b/kpat/dealer.h index 7dfc5825..0704433b 100644 --- a/kpat/dealer.h +++ b/kpat/dealer.h @@ -3,6 +3,7 @@ #include "pile.h" #include "hint.h" +#include <tqdom.h> #include <krandomsequence.h> class TQDomDocument; @@ -38,7 +39,41 @@ public: virtual Dealer *createGame(TDEMainWindow *parent) = 0; }; -class CardState; +class CardState { +public: + Card *it; + Pile *source; + double x; + double y; + double z; + bool faceup; + bool tookdown; + int source_index; + CardState() {} +public: + // as every card is only once we can sort after the card. + // < is the same as <= in that context. == is different + bool operator<(const CardState &rhs) const { return it < rhs.it; } + bool operator<=(const CardState &rhs) const { return it <= rhs.it; } + bool operator>(const CardState &rhs) const { return it > rhs.it; } + bool operator>=(const CardState &rhs) const { return it > rhs.it; } + bool operator==(const CardState &rhs) const { + return (it == rhs.it && source == rhs.source && x == rhs.x && + y == rhs.y && z == rhs.z && faceup == rhs.faceup + && source_index == rhs.source_index && tookdown == rhs.tookdown); + } + void fillNode(TQDomElement &e) const { + e.setAttribute("value", it->rank()); + e.setAttribute("suit", it->suit()); + e.setAttribute("source", source->index()); + e.setAttribute("x", x); + e.setAttribute("y", y); + e.setAttribute("z", z); + e.setAttribute("faceup", faceup); + e.setAttribute("tookdown", tookdown); + e.setAttribute("source_index", source_index); + } +}; typedef TQValueList<CardState> CardStateList; |