AccountSpielPartner.h 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146
  1. #ifndef AccountSpielPartner_H
  2. #define AccountSpielPartner_H
  3. #include <Fortschritt.h>
  4. #include <Fenster.h>
  5. #include <Knopf.h>
  6. #include <AuswahlBox.h>
  7. #include <Thread.h>
  8. #include <Rahmen.h>
  9. using namespace Framework;
  10. namespace ASPLEDStyle
  11. {
  12. const int SpielArt = 1;
  13. const int Karte = 2;
  14. const int Spieler = 4;
  15. const int Ausklappbar = 8;
  16. }
  17. struct AccountSPListeEintragDaten
  18. {
  19. int style;
  20. int id;
  21. Text *name;
  22. int anzahl;
  23. int prozent;
  24. };
  25. class AccountSPListeEintrag
  26. {
  27. private:
  28. LRahmen *ram;
  29. RCArray< AccountSPListeEintrag > *members;
  30. TextFeld *name;
  31. TextFeld *anzahl;
  32. FBalken *prozent;
  33. Knopf *details;
  34. Bild *ausklappen;
  35. Bild *einklappen;
  36. AccountSPListeEintragDaten *daten;
  37. Text *sortSpalte;
  38. bool sortAbsteigend;
  39. double tickVal;
  40. bool rend;
  41. int ref;
  42. // privat
  43. int getReihenfolge( int *arr );
  44. public:
  45. // Konstruktor
  46. AccountSPListeEintrag( AccountSPListeEintragDaten *daten, Schrift *zSchrift );
  47. // Destruktor
  48. ~AccountSPListeEintrag();
  49. // nicht constant
  50. void addMember( AccountSPListeEintrag *e );
  51. void setSortSpalte( char *sp );
  52. void setSortRichtung( bool absteigend );
  53. bool tick( double tickVal );
  54. void doMausEreignis( MausEreignis &me );
  55. void render( int xOff, int yOff, int breite, Bild &zRObj );
  56. // constant
  57. int getHeight() const;
  58. AccountSPListeEintragDaten *zDaten() const;
  59. // Reference Counting
  60. AccountSPListeEintrag *getThis();
  61. AccountSPListeEintrag *release();
  62. };
  63. class AccountSPListe : public Zeichnung
  64. {
  65. private:
  66. Schrift *schrift;
  67. LRahmen *ram;
  68. VScrollBar *scroll;
  69. RCArray< AccountSPListeEintrag > *skp;
  70. RCArray< AccountSPListeEintrag > *spk;
  71. RCArray< AccountSPListeEintrag > *psk;
  72. Text *gruppierung;
  73. Text *sortSpalte;
  74. bool sortAbsteigend;
  75. bool rend;
  76. int ref;
  77. // privat
  78. int getReihenfolge( int *arr );
  79. public:
  80. // Konstruktor
  81. AccountSPListe( Schrift *zSchrift );
  82. // Destruktor
  83. ~AccountSPListe();
  84. // nicht constant
  85. void reset();
  86. void ladeDaten( int accId );
  87. void setGruppierung( char *gp );
  88. void setSortSpalte( char *sp );
  89. void setSortRichtung( bool absteigend );
  90. bool tick( double tickVal ) override;
  91. void doMausEreignis( MausEreignis &me ) override;
  92. void render( Bild &zRObj ) override;
  93. // constant
  94. // Reference Counting
  95. AccountSPListe *getThis();
  96. AccountSPListe *release();
  97. };
  98. class AccountSpielPartner : public Thread
  99. {
  100. private:
  101. Fenster *spielPartnerF;
  102. AuswahlBox *gruppAusw;
  103. AuswahlBox *sortSpalte;
  104. AuswahlBox *sortRichtung;
  105. AccountSPListe *liste;
  106. int status;
  107. int accId;
  108. int animation;
  109. unsigned char alpha;
  110. double tickVal;
  111. bool rend;
  112. int ref;
  113. public:
  114. // Konstruktor
  115. AccountSpielPartner( Schrift *zSchrift );
  116. // Destruktor
  117. ~AccountSpielPartner();
  118. // nicht constant
  119. void reset();
  120. void ladeStatistik( int accId );
  121. virtual void thread();
  122. void setSichtbar( bool sichtbar, bool nachRechts );
  123. bool tick( double zeit );
  124. void doMausEreignis( MausEreignis &me );
  125. void render( Bild &zRObj );
  126. // constant
  127. int getStatus() const;
  128. // Reference Counting
  129. AccountSpielPartner *getThis();
  130. AccountSpielPartner *release();
  131. };
  132. #endif;