Menü.h 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180
  1. #ifndef Menü_H
  2. #define Menü_H
  3. #include <Knopf.h>
  4. #include <Tabelle.h>
  5. #include <Diagramm.h>
  6. #include <AuswahlBox.h>
  7. #include <Datei.h>
  8. #include <UIInitialization.h>
  9. #include "Map.h"
  10. using namespace Framework;
  11. class MenüVerloren : public virtual ReferenceCounter
  12. {
  13. private:
  14. Rahmen *ram;
  15. TextFeld *verloren;
  16. Knopf *neu;
  17. Knopf *beenden;
  18. public:
  19. // Kontruktor
  20. MenüVerloren( UIInit &uiFactory );
  21. // Destruktor
  22. ~MenüVerloren();
  23. // nicht constant
  24. int doPublicMausEreignis( MausEreignis &me );
  25. bool tick( double tickVal );
  26. void render( Bild &zRObj );
  27. };
  28. class MenüSpiel : public virtual ReferenceCounter
  29. {
  30. private:
  31. TextFeld *scoreT;
  32. Knopf *beenden;
  33. Map *map;
  34. MenüVerloren *verloren;
  35. double timePuffer;
  36. bool beendet;
  37. public:
  38. // Konstruktor
  39. MenüSpiel( UIInit &uiFactory, KSGClient::MinigameServerClient *klient );
  40. // Destruktor
  41. ~MenüSpiel();
  42. // nicht constant
  43. void reset();
  44. void doPublicMausEreignis( MausEreignis &me );
  45. void doTastaturEreignis( TastaturEreignis &te );
  46. bool tick( double tickVal );
  47. void render( Bild &zRObj );
  48. // constant
  49. bool istBeendet() const;
  50. };
  51. class MenüWiederhohlung : public virtual ReferenceCounter
  52. {
  53. private:
  54. TextFeld *scoreT;
  55. Knopf *beenden;
  56. Map *map;
  57. Datei *datei;
  58. double nowTime;
  59. double nextTime;
  60. bool beendet;
  61. double timePuffer;
  62. public:
  63. // Konstruktor
  64. MenüWiederhohlung( UIInit &uiFactory, Datei *datei, Text *zOptionen );
  65. // Destruktor
  66. ~MenüWiederhohlung();
  67. // nicht constant
  68. void doPublicMausEreignis( MausEreignis &me );
  69. void doTastaturEreignis( TastaturEreignis &te );
  70. bool tick( double tickVal );
  71. void render( Bild &zRObj );
  72. // constant
  73. bool istBeendet() const;
  74. };
  75. class MenüStatistik : public virtual ReferenceCounter
  76. {
  77. private:
  78. TextFeld *ansichtT;
  79. AuswahlBox *ansicht;
  80. KontrollKnopf *optionen;
  81. ObjTabelle *gesammtT;
  82. ObjTabelle *optionenT;
  83. ObjTabelle *worldBestT;
  84. LDiag *gesammtD;
  85. LDiag *optionenD;
  86. Knopf *removen;
  87. Knopf *zurück;
  88. TextRenderer *tr;
  89. KSGClient::MinigameServerClient *klient;
  90. MenüWiederhohlung *wiederH;
  91. UIInit uiFactory;
  92. bool asyncFinished;
  93. bool beendet;
  94. public:
  95. // Konstruktor
  96. MenüStatistik( UIInit &uiFactory, KSGClient::MinigameServerClient *klient );
  97. // Destruktor
  98. ~MenüStatistik();
  99. // nicht constant
  100. void reset();
  101. void doPublicMausEreignis( MausEreignis &me );
  102. bool tick( double tickVal );
  103. void render( Bild &zRObj );
  104. // constant
  105. bool istBeendet() const;
  106. bool istWiederhohlung() const;
  107. };
  108. class MenüOptionen : public virtual ReferenceCounter
  109. {
  110. private:
  111. TextFeld *breiteT;
  112. TextFeld *breite;
  113. TextFeld *höheT;
  114. TextFeld *höhe;
  115. TextFeld *bAnzahlT;
  116. TextFeld *bAnzahl;
  117. TextFeld *tempoT;
  118. TextFeld *tempo;
  119. KontrollKnopf *fortsetzen;
  120. Knopf *abbrechen;
  121. Knopf *ok;
  122. bool beendet;
  123. public:
  124. // Konstruktor
  125. MenüOptionen( UIInit &uiFactory );
  126. // Destruktor
  127. ~MenüOptionen();
  128. // nicht constant
  129. void reset();
  130. void doPublicMausEreignis( MausEreignis &me );
  131. void doTastaturEreignis( TastaturEreignis &te );
  132. bool tick( double tickVal );
  133. void render( Bild &zRObj );
  134. // constant
  135. bool istBeendet() const;
  136. };
  137. class Menü : public virtual ReferenceCounter
  138. {
  139. private:
  140. Knopf *spielen;
  141. MenüSpiel *spielenF;
  142. Knopf *optionen;
  143. MenüOptionen *optionenF;
  144. Knopf *statistik;
  145. MenüStatistik *statistikF;
  146. Knopf *beenden;
  147. Bild *hintergrund;
  148. Rahmen *ram;
  149. bool beendet;
  150. int status;
  151. public:
  152. // Konstruktor
  153. Menü( UIInit &uiFactory, KSGClient::MinigameServerClient *klient );
  154. // Destruktor
  155. ~Menü();
  156. // nicht constant
  157. void reset();
  158. void doPublicMausEreignis( MausEreignis &me );
  159. void doTastaturEreignis( TastaturEreignis &te );
  160. bool tick( double z );
  161. void render( Bild &zRObj );
  162. // constant
  163. bool istBeendet() const;
  164. };
  165. #endif