#ifndef KartenKaufen_H #define KartenKaufen_H #include #include #include #include #include #include #include #include using namespace Framework; using namespace KSGScript; class KartenKaufenAuswahl : private Thread { private: int karteId; unsigned char alpha; KSGScriptObj *fenster; Framework::Animation2D *laden; Punkt pos; LRahmen *ram; HINSTANCE ksgs; bool aktion; int ref; public: // Konstruktor KartenKaufenAuswahl( Schrift *zSchrift ); // Destruktor ~KartenKaufenAuswahl(); // nicht constant void ladeKarteSeite( int id ); void reset(); virtual void thread(); void ksgsAktion( RCArray< KSGSVariable > *parameter, KSGSVariable **retVal ); void doMausEreignis( MausEreignis &me ); void doTastaturEreignis( TastaturEreignis &te ); bool tick( double zeit ); void render( Bild &zRObj ); // constant // Reference Counting KartenKaufenAuswahl *getThis(); KartenKaufenAuswahl *release(); }; class KartenKaufenListeEintrag { private: int karteId; Knopf *auswählen; Bild *hintergrund; AlphaFeld *ausgewählt; LRahmen *ram; bool ausw; bool rend; int ref; public: // Konstruktor KartenKaufenListeEintrag( int id, Schrift *schrift ); // Destruktor ~KartenKaufenListeEintrag(); // nicht constant void resetAuswahl(); bool doMausEreignis( MausEreignis &me ); bool tick( double zeit ); void render( int yOff, Bild &zRObj ); // constant int getKarteId() const; // Reference Counting KartenKaufenListeEintrag *getThis(); KartenKaufenListeEintrag *release(); }; class KartenKaufenListe { private: Schrift *s; LRahmen *ram; Punkt pos; RCArray< KartenKaufenListeEintrag > *einträge; VScrollBar *vScroll; bool rend; int ref; Critical cs; public: // Konstruktor KartenKaufenListe( Schrift *schrift ); // Destruktor ~KartenKaufenListe(); // nicht constant void ladeKarten( Array< int > *karten ); void leeren(); int doMausEreignis( MausEreignis &me ); bool tick( double zeit ); void render( Bild &zRObj ); // constant int getEintragAnzahl(); // Reference Counting KartenKaufenListe *getThis(); KartenKaufenListe *release(); }; class KartenKaufen : private 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; int ref; public: // Konstruktor KartenKaufen( Schrift *zSchrift ); // Destruktor ~KartenKaufen(); // nicht constant void setSichtbar( bool sicht ); virtual void thread(); void doMausEreignis( MausEreignis &me ); void doTastaturEreignis( TastaturEreignis &te ); bool tick( double zeit ); void render( Bild &zRObj ); // constant bool istSichtbar() const; // Reference Counting KartenKaufen *getThis(); KartenKaufen *release(); }; #endif