#ifndef Menü_H #define Menü_H #include #include #include #include #include "Map.h" using namespace Framework; class MenüVerloren : public virtual ReferenceCounter { private: Rahmen *ram; TextFeld *verloren; Knopf *neu; Knopf *beenden; public: // Kontruktor MenüVerloren( UIInit &uiFactory ); // Destruktor ~MenüVerloren(); // nicht constant int doPublicMausEreignis( MausEreignis &me ); bool tick( double tickVal ); void render( Bild &zRObj ); }; class MenüSpiel : public virtual ReferenceCounter { private: TextFeld *scoreT; Knopf *beenden; Map *map; MenüVerloren *verloren; double timePuffer; bool beendet; public: // Konstruktor MenüSpiel( UIInit &uiFactory, KSGClient::MinigameServerClient *klient ); // Destruktor ~MenüSpiel(); // nicht constant void reset(); void doPublicMausEreignis( MausEreignis &me ); void doTastaturEreignis( TastaturEreignis &te ); bool tick( double tickVal ); void render( Bild &zRObj ); // constant bool istBeendet() const; }; class MenüWiederhohlung : public virtual ReferenceCounter { private: TextFeld *scoreT; Knopf *beenden; Map *map; Datei *datei; double nowTime; double nextTime; bool beendet; double timePuffer; public: // Konstruktor MenüWiederhohlung( UIInit &uiFactory, Datei *datei, Text *zOptionen ); // Destruktor ~MenüWiederhohlung(); // nicht constant void doPublicMausEreignis( MausEreignis &me ); void doTastaturEreignis( TastaturEreignis &te ); bool tick( double tickVal ); void render( Bild &zRObj ); // constant bool istBeendet() const; }; class MenüStatistik : public virtual ReferenceCounter { private: TextFeld *ansichtT; AuswahlBox *ansicht; KontrollKnopf *optionen; ObjTabelle *gesammtT; ObjTabelle *optionenT; ObjTabelle *worldBestT; LDiag *gesammtD; LDiag *optionenD; Knopf *removen; Knopf *zurück; UIInit uiFactory; TextRenderer *tr; KSGClient::MinigameServerClient *klient; MenüWiederhohlung *wiederH; bool asyncFinished; bool beendet; public: // Konstruktor MenüStatistik( UIInit &uiFactory, KSGClient::MinigameServerClient *klient ); // Destruktor ~MenüStatistik(); // nicht constant void reset(); void doPublicMausEreignis( MausEreignis &me ); bool tick( double tickVal ); void render( Bild &zRObj ); // constant bool istBeendet() const; bool istWiederhohlung() const; }; class MenüOptionen : public virtual ReferenceCounter { private: TextFeld *breiteT; TextFeld *breite; TextFeld *höheT; TextFeld *höhe; TextFeld *neuTempoT; TextFeld *neuTempo; TextFeld *tempoT; TextFeld *tempo; KontrollKnopf *fortsetzen; Knopf *abbrechen; Knopf *ok; bool beendet; public: // Konstruktor MenüOptionen( UIInit &uiFactory ); // Destruktor ~MenüOptionen(); // nicht constant void reset(); void doPublicMausEreignis( MausEreignis &me ); void doTastaturEreignis( TastaturEreignis &te ); bool tick( double tickVal ); void render( Bild &zRObj ); // constant bool istBeendet() const; }; class Menü : public virtual ReferenceCounter { private: Knopf *spielen; MenüSpiel *spielenF; Knopf *optionen; MenüOptionen *optionenF; Knopf *statistik; MenüStatistik *statistikF; Knopf *beenden; Bild *hintergrund; Rahmen *ram; bool beendet; int status; public: // Konstruktor Menü( UIInit &uiFactory, KSGClient::MinigameServerClient *klient ); // Destruktor ~Menü(); // nicht constant# void reset(); void doPublicMausEreignis( MausEreignis &me ); void doTastaturEreignis( TastaturEreignis &te ); bool tick( double z ); void render( Bild &zRObj ); // constant bool istBeendet() const; }; #endif