AccountSpielPartner.h 2.9 KB

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