Menü.h 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184
  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 "Map.h"
  8. #include <Rahmen.h>
  9. #include <UIInitialization.h>
  10. using namespace Framework;
  11. class MenüVerloren : public virtual ReferenceCounter
  12. {
  13. private:
  14. LRahmen *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. char tastenStände;
  62. double timePuffer;
  63. public:
  64. // Konstruktor
  65. MenüWiederhohlung( UIInit &uiFactory, Datei *datei, Text *zOptionen );
  66. // Destruktor
  67. ~MenüWiederhohlung();
  68. // nicht constant
  69. void doPublicMausEreignis( MausEreignis &me );
  70. void doTastaturEreignis( TastaturEreignis &te );
  71. bool tick( double tickVal );
  72. void render( Bild &zRObj );
  73. // constant
  74. bool istBeendet() const;
  75. };
  76. class MenüStatistik : public virtual ReferenceCounter
  77. {
  78. private:
  79. UIInit uiFactory;
  80. TextFeld *ansichtT;
  81. AuswahlBox *ansicht;
  82. KontrollKnopf *optionen;
  83. ObjTabelle *gesammtT;
  84. ObjTabelle *optionenT;
  85. ObjTabelle *worldBestT;
  86. LDiag *gesammtD;
  87. LDiag *optionenD;
  88. Knopf *remove;
  89. Knopf *zurück;
  90. TextRenderer *tr;
  91. KSGClient::MinigameServerClient *klient;
  92. MenüWiederhohlung *wiederH;
  93. bool asyncFinished;
  94. bool beendet;
  95. public:
  96. // Konstruktor
  97. MenüStatistik( UIInit &uiFactory, KSGClient::MinigameServerClient *klient );
  98. // Destruktor
  99. ~MenüStatistik();
  100. // nicht constant
  101. void reset();
  102. void doPublicMausEreignis( MausEreignis &me );
  103. bool tick( double tickVal );
  104. void render( Bild &zRObj );
  105. // constant
  106. bool istBeendet() const;
  107. bool istWiederhohlung() const;
  108. };
  109. class MenüOptionen : public virtual ReferenceCounter
  110. {
  111. private:
  112. TextFeld *breiteT;
  113. TextFeld *breite;
  114. TextFeld *höheT;
  115. TextFeld *höhe;
  116. TextFeld *aGrößeT;
  117. TextFeld *aGröße;
  118. TextFeld *timerT;
  119. TextFeld *timer;
  120. TextFeld *shipT;
  121. AuswahlBox *ship;
  122. KontrollKnopf *autoKam;
  123. KontrollKnopf *fortsetzen;
  124. Knopf *abbrechen;
  125. Knopf *ok;
  126. bool beendet;
  127. public:
  128. // Konstruktor
  129. MenüOptionen( UIInit &uiFactory );
  130. // Destruktor
  131. ~MenüOptionen();
  132. // nicht constant
  133. void reset();
  134. void doPublicMausEreignis( MausEreignis &me );
  135. void doTastaturEreignis( TastaturEreignis &te );
  136. bool tick( double tickVal );
  137. void render( Bild &zRObj );
  138. // constant
  139. bool istBeendet() const;
  140. };
  141. class Menü : public virtual ReferenceCounter
  142. {
  143. private:
  144. Knopf *spielen;
  145. MenüSpiel *spielenF;
  146. Knopf *optionen;
  147. MenüOptionen *optionenF;
  148. Knopf *statistik;
  149. MenüStatistik *statistikF;
  150. Knopf *beenden;
  151. Bild *hintergrund;
  152. LRahmen *ram;
  153. bool beendet;
  154. int status;
  155. public:
  156. // Konstruktor
  157. Menü( UIInit &uiFactory, KSGClient::MinigameServerClient *klient );
  158. // Destruktor
  159. ~Menü();
  160. // nicht constant
  161. void reset();
  162. void doPublicMausEreignis( MausEreignis &me );
  163. void doTastaturEreignis( TastaturEreignis &te );
  164. bool tick( double z );
  165. void render( Bild &zRObj );
  166. // constant
  167. bool istBeendet() const;
  168. };
  169. #endif