#ifndef KartenKaufen_H #define KartenKaufen_H #include #include #include #include #include #include #include #include #include using namespace Framework; using namespace KSGScript; class KartenKaufenAuswahl : public Thread { private: int karteId; unsigned char alpha; KSGScriptObj *fenster; Framework::Animation2D *laden; Punkt pos; LRahmen *ram; HINSTANCE ksgs; bool aktion; public: // Konstruktor KartenKaufenAuswahl(); // Destruktor ~KartenKaufenAuswahl(); // nicht constant void ladeKarteSeite( int id ); void reset(); virtual void thread(); void ksgsAktion( RCArray< KSGSVariable > *parameter, KSGSVariable **retVal ); void doPublicMausEreignis( MausEreignis &me ); void doTastaturEreignis( TastaturEreignis &te ); bool tick( double zeit ); void render( Bild &zRObj ); }; class KartenKaufenListeEintrag : public virtual ReferenceCounter { private: int karteId; Knopf *auswählen; Bild *hintergrund; AlphaFeld *ausgewählt; LRahmen *ram; bool ausw; bool rend; public: // Konstruktor KartenKaufenListeEintrag( int id ); // Destruktor ~KartenKaufenListeEintrag(); // nicht constant void resetAuswahl(); bool doPublicMausEreignis( MausEreignis &me ); bool tick( double zeit ); void render( int yOff, Bild &zRObj ); // constant int getKarteId() const; }; class KartenKaufenListe : public virtual ReferenceCounter { private: LRahmen *ram; Punkt pos; RCArray< KartenKaufenListeEintrag > *einträge; VScrollBar *vScroll; bool rend; Critical cs; public: // Konstruktor KartenKaufenListe(); // Destruktor ~KartenKaufenListe(); // nicht constant void ladeKarten( Array< int > *karten ); void leeren(); int doPublicMausEreignis( MausEreignis &me ); bool tick( double zeit ); void render( Bild &zRObj ); // constant int getEintragAnzahl(); }; class KartenKaufen : public Thread { private: unsigned char alpha; bool sichtbar; Text *suchText; LRahmen *ram; AuswahlBox *spielArt; TextFeld *suchFilterT; TextFeld *suchFilter; Knopf *suchen; TextFeld *seiten; Knopf *weiter; Knopf *zurück; Punkt pos; KartenKaufenListe *liste; KartenKaufenAuswahl *auswahl; Framework::Animation2D *laden; double tickVal; int seite; int maxSeite; int aktion; bool rend; public: // Konstruktor KartenKaufen(); // Destruktor ~KartenKaufen(); // nicht constant void setSichtbar( bool sicht ); virtual void thread(); void doPublicMausEreignis( MausEreignis &me ); void doTastaturEreignis( TastaturEreignis &te ); bool tick( double zeit ); void render( Bild &zRObj ); // constant bool istSichtbar() const; }; #endif